我想使用LightInject的构造函数注入功能,但我想先清理一下IDisposables的生命周期管理。LightInject:构造函数注入和IDisposable
考虑以下几点:
实施例A
public class Foo : IDisposable
{
readonly IBar bar;
public Foo(IBar bar)
{
this.bar = bar;
}
public void Dispose()
{
}
}
实施例B
public class Foo : IDisposable
{
readonly IBar bar;
public Foo(Func<string, IBar> bar)
{
this.bar = bar("myParameter");
}
public void Dispose()
{
}
}
我的问题对于这两个例子:
- Foo处置后,IBar上的LightInject会调用Dispose方法还是应该调用dispose?
- 如果IBar正在使用PerContainerLifeTime,那么在处理每个Foo实例后会调用Dispose吗?
编辑 好第二个问题是愚蠢的我认识,一个PerContainerLifeTime实例是当容器被布置布置课程。 我的整体问题是,LightInject跟踪注入的依赖关系,并将它们自己处置?
使用Autofac .... – nathanchere 2015-04-10 10:52:44