我在ASP.NET WebAPI 2应用程序中有一个基于Owin的OAuth 2.0实现。鉴于我设置了对经过验证的身份的正确声明,在我的控制器代码中,我通过this.User属性获取当前经过身份验证的用户。
我需要以这种方式设置Ninject内核,以便在每个请求上实现PerRequestScope对象,该对象将保留当前用户,但它将以可注入的方式提供,而不仅仅是来自控制器的代码。
请协助如何做到这一点。谢谢。
答案 0 :(得分:0)
好的,找到了。
kernel.Bind<IPrincipal>()
.ToMethod(context => HttpContext.Current.User)
.InRequestScope();
允许任何注入IPrincipal的人获取当前用户名。