ASP.NET MVC находит текущее имя пользователя в настраиваемом фильтре действий
Я создаю настраиваемый фильтр действий для asp.net MVC.
В методе OnActionExecuting()
.
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
string userName = ?????// how can I get this?
}
Мне нужно узнать имя текущего пользователя (я использую проверку подлинности)
В контроллере я просто могу просто сделать User.Identity.Name
Есть ли способ получить имя пользователя в ActionFilter?
Ответы
Ответ 1
string userName = filterContext.HttpContext.User.Identity.Name;
И если вы хотите сначала проверить, есть ли аутентифицированный пользователь:
string userName = null;
if (filterContext.HttpContext.User.Identity.IsAuthenticated)
{
userName = filterContext.HttpContext.User.Identity.Name;
}