我正在将 Autofac 用于 DI 和 .Net Web API 项目。API 控制器的依赖项是使用 Autofac 注入的。这些依赖项之一需要查看请求标头。
所以我注册了当前的 HTTP 上下文并解析了 HTTPRequestBase 对象。该代码查看标头并创建一个新对象 X(通过与数据存储建立连接)。我把这个对象 X HTTpContextBase.Items 放在以后使用,这样我就不需要连接到数据存储了。
该项目还使用 HTTPParameter Binding 进行参数绑定。需要绑定的参数就是这个新创建的对象XI。但是从 HttpParameterBinding.ExecuteBindingAsync,我无法访问当前的 HTTPContext。但是参数绑定可以访问HTTPRequestMessage。
有什么方法可以将 HTTPRequestMessage 注册到 Autofac。或在进行参数绑定时访问 HTTpContextBase.Items 的任何方式。