自托管的WCF服务中Autofac对象生命周期范围

3
我有一个WCF服务,它托管在Windows服务中。它与ASP.NET项目共享相同的库。该WCF服务用于处理长时间运行的操作,我不希望ASP.NET站点运行这些操作。我正在使用Autofac来处理ASP.NET和WCF项目中的依赖关系。由于我正在使用ASP.NET,因此在所有注册中都使用InstancePerLifeTimeScope()方法。由于这些相同的注册模块也用于WCF服务,我希望它们可以按照每个WCF方法调用创建实例,但事实并非如此。是否有一种方法可以让Autofac将对象的生命周期范围视为服务调用的生命周期?希望我的表述清晰明了。
1个回答

2
假设您正在使用Autofac服务托管机制,如果您将与服务相关的对象注册为InstancePerDependency,并将{{link1:set your InstanceContextMode to PerCall}},则每次调用都应该解析其自己的依赖项。 Autofac没有WCF的显式“每个调用”生存期设置。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接