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

时间:2011-12-02 16:49:06

标签: asp.net wcf autofac

我有一个托管在Windows服务中的WCF服务。它与ASP.NET项目共享相同的库。 WCF服务用于处理我不希望ASP.NET站点运行的长时间运行的操作。我正在使用Autofac来处理ASP.NET和WCF项目中的依赖项。由于我使用的是ASP.NET,因此我在所有注册中使用InstancePerLifeTimeScope()方法。由于这些相同的注册模块也在WCF服务中使用,我希望他们可以为每个WCF方法调用创建实例,但这种情况不会发生。有没有办法让Autofac将对象的生命周期范围视为与服务调用的生命周期相同?

我希望这是有道理的。

1 个答案:

答案 0 :(得分:2)

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