在Autofac中为InstancePerApiRequest注册一个类,并在后台线程中使用



我有一个使用InstancePerApiRequest注册的类,但我也需要在请求范围之外访问它。当在后台任务中解析该类时,我收到以下错误:"在请求实例的作用域中,看不到标记与"AutofacWebRequest"匹配的作用域。"。在InstancePerApiRequest之后添加InstancePerLifetimeScope可更正错误,但这对实际注册有何影响。我是否仍在获取InstancePerApiRequest,还是只是覆盖了之前的请求?

请注意,任务是在DelegatingHandler中使用.ContineWith.创建的

如果这不正确,我该如何做到这一点?

为了处理这个问题,我使用Named和AsInstancePerLifetime再次注册了它们。因此,任何使用命名生存期的后台任务解析,请求/响应流中的项都使用在InstancePerApiRequest中注册的项。

最新更新