【问题标题】:Access Identity User from base controller constructor in ASP.NET 5从 ASP.NET 5 中的基本控制器构造函数访问身份用户
【发布时间】:2016-01-23 19:37:38
【问题描述】:

我尝试在我的抽象基本控制器构造函数中访问 Identity current User,以使用该链接在 View 中显示用户(如果它已登录)。

所以,我得到了User 属性是null。每个人都建议使用过滤器并通过 ViewData 返回用户。此处示例:"Why is User (as in User.Identity.Name) null in my abstract base controller?"

我试着做一些这样的想法,但面对这个问题:AuthorizationContext 没有成员 Controller

    [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method)]
public class UserAuthorizationAttribute : Attribute, IAuthorizationFilter
{
    public void OnAuthorization(Microsoft.AspNet.Mvc.Filters.AuthorizationContext filterContext)
    {
        filterContext.Controller.ViewData["IdentityUser"] = filterContext.HttpContext.User;
    }
}

所以,我有两个问题:

  • 有没有办法将数据从过滤器发送到控制器?
  • 也许还有其他方法可以获取非空用户?

【问题讨论】:

    标签: c# asp.net asp.net-mvc asp.net-identity


    【解决方案1】:

    您可以尝试使用操作过滤器而不是授权过滤器。这些将在管道中稍后处理,并且可以访问用户。

    【讨论】:

      猜你喜欢
      • 2013-10-14
      • 2019-02-11
      • 1970-01-01
      • 2018-09-30
      • 1970-01-01
      • 2010-11-03
      • 1970-01-01
      • 1970-01-01
      • 2018-05-25
      相关资源
      最近更新 更多