Как получить доступ к деталям идентификации пользователя в методе mvc HtmlExtension?
Привет, ребята, спасибо за ваш ответ заранее.
Мне нужно отобразить много ссылок действий на многих страницах, и у меня есть авторизация между ролями пользователей, поэтому я кодирую, если еще в представлениях, но я хочу сделать его коротким, поэтому я использую метод расширения htmlHelper, вот мой код.
public static MvcHtmlString ValidationActionLink(this HtmlHelper htmlHelper, string linkText, string actionName, string controllerName, string AllowedRole)
{
if (User.IsInRole(AllowedRole))// its given me error The User dosent exist in current context Am i missing some namespace or what ?
{
htmlHelper.ActionLink(linkText, actionName);
}
}
1 ответ
Решение
Вы можете получить доступ User
в рамках метода расширения с использованием
public static MvcHtmlString ValidationActionLink(this HtmlHelper htmlHelper, string linkText, string actionName, string controllerName, string AllowedRole)
{
var user = htmlHelper.ViewContext.HttpContext.User;
в качестве альтернативы, вы могли бы пройти User
к методу, добавив дополнительный параметр к вашему методу расширения.