【发布时间】:2016-11-25 15:11:59
【问题描述】:
我有一个服务,几乎每个方法都需要当前用户执行。在我开始使用 autofac 之前,我基本上创建了一个这样的公共属性:
private IOrderProvider _orderProvider;
public IOrderProvider OrderProvider => _orderProvider ?? (_orderProvider = new OrderProvider((ClaimsIdentity)User.Identity));
因为这是控制器上的公共属性,所以它可以访问 User。现在使用 autofac 我在 StartupConfig 中注册了我的 Service。自然我无权访问那里的用户。
有没有办法将当前用户注入到 OrderProvider 构造函数中,或者另一种方法来实现它?
【问题讨论】:
-
创建一个服务,包装HttpContext并暴露用户原则或身份。你想要哪个
-
你能举个例子吗?
标签: c# asp.net-web-api autofac