Autofac与WCF的集成:传递BeginLifetimeScope()而不是Container

时间:2016-02-11 04:22:55

标签: wcf memory-leaks autofac factory-pattern servicehost

目前我的应用程序代码编写如下,我们正面临内存泄漏问题

此处容器正在保持所有图层对象而不是重新对齐它们。

var container = builder.Build()
host.AddDependencyInjectionBehavior(mainInterface, container);

而不是我可以这样写,是推荐

var container = builder.Build()
host.AddDependencyInjectionBehavior(mainInterface,container.BeginLifetimeScope()());

1 个答案:

答案 0 :(得分:1)

当您开始使用新的LifetimeScope时,请记得在完成后再进行处理。在LifetimeScope dispose期间,Autofac会处理它创建的所有IDisposable实例。