【问题标题】:Where is the Autofac InstancePerApiRequest scope disposed?Autofac InstancePerApiRequest 范围在哪里设置?
【发布时间】:2014-06-25 11:04:03
【问题描述】:

我正在浏览Autofac.Integration.WebApiAutofac.Integration.WebApi.Owin 的代码,我可以看到InstancePerApiRequest/InstancePerHttpRequest 生命周期范围是如何创建并保存在HttpRequestMessage 中的,但我看不到它在哪里正在请求结束时处理。

我希望HttpModule 或 OWIN 中间件可以处理范围但找不到它。

有谁知道 Autofac InstancePerApiRequest/InstancePerHttpRequest 生命周期范围(标记为 AutofacWebRequest)在哪里被销毁?

【问题讨论】:

    标签: c# autofac owin asp.net-web-api2


    【解决方案1】:

    如果您使用的是 OWIN 中间件集成,则生命周期范围为 here(通过 using 块)。

    如果您使用的是常规的 AutofacWebApiDependencyResolver,它会被处理为 here(通过 Web API 的 IDependencyResolver 服务)。

    【讨论】:

    • 您好,感谢您的回答!但是我不应该同时使用中间件集成并设置 AutofacWebApiDependencyResolver 吗?像这样code var dependencyResolver = new AutofacWebApiDependencyResolver(container); configuration.DependencyResolver = 依赖解析器; app.UseAutofacMiddleware(容器); app.UseAutofacWebApi(配置);code
    • 我不认为这是原始问题的一部分,但是不,如果您没有任何依赖于 Autofac 的中间件,则不必使用 OWIN 部分。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多