我正在开发一个分布在我公司内部并被各种应用程序使用的库.该库必须是平台无关的,因为它可以部署在Web上下文中,甚至可以部署在控制台应用程序中.我想将对象注册为per-http-request或per-thread,具体取决于使用此框架的应用程序的上下文.在StructureMap中,我可以使用Hybrid生命周期来完成此操作.本质上,如果存在HttpContext,那么该对象的范围将限定为该范围,否则将在每个线程的基础上使用ThreadLocalStorage.分布式库或使用应用程序无需其他配置.这是否可以使用Autofac?鉴于我们的开发人员技能水平差异很大,我们的目标是最大限度地减少/消除消费者的任何专业配置.
我知道使用InstancePerLifetimeScope生命周期注册可以与上下文无关,但是为了将InstancePerLifetimeScope注册绑定到Http请求,需要消耗应用程序来使用ASP.NET/WCF/MVC集成二进制文件.或者,对于每线程范围,使用代码需要负责为每个线程创建生命周期范围.
有什么建议?
autofac ×1