我正在为asp.net MVC创建一个自定义动作过滤器。
在OnActionExecuting()方法中。
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
string userName = ?????// how can I get this?
}
我需要找出当前的用户名(我正在使用表单身份验证)
在控制器中,我可以简单地做User.Identity.Name
有没有办法在ActionFilter中获取用户名?
string userName = filterContext.HttpContext.User.Identity.Name;
如果你想检查是否有一个经过身份验证的用户:
string userName = null;
if (filterContext.HttpContext.User.Identity.IsAuthenticated)
{
userName = filterContext.HttpContext.User.Identity.Name;
}
相关文章
- asp.net-mvc - ASP.NET MVC Pass对象从自定义操作过滤器到操作
- asp.net-mvc - 一种在ASP.NET MVC中排除操作过滤器的方法?
- asp.net-mvc - 在ASP.NET MVC 3中授权当前用户对控制器和操作名称
- asp.net-mvc - 在“控制器操作”中访问操作过滤器的数据
- asp.net-mvc - 重定向到指定的控制器和操作在asp.net mvc操作过滤器
- asp.net-mvc - 如何获取过滤器重定向到另一个操作?
- asp.net-mvc - 如何在ASP.NET MVC中测试动作过滤器?
- c# - Asp.net mvc - 从自定义Action过滤器访问视图模型