Asp.Net Web API跨层传递用户

5 asp.net asp.net-web-api

我正在为我的Web API服务使用基于令牌的身份验证.但我想跟踪创建,创建所有记录的信息.所以我在我的设置HttpContext.Current.UserGenericIdentityuserId AuthenticationFilter.但我不想HttpContext从我的数据层访问,因为我认为数据层不应该知道任何事情HttpContext.

那么,有没有通过图层传递用户信息而没有`HttpContext'的最佳实践?

Fed*_*uma 2

将您的委托人分配给HttpContxt.Current.UserThread.CurrentPrincipal

然后,您可以从代码中的任何位置进行访问Thread.CurrentPrincipal,当然甚至可以从没有引用System.Web.