9
我使用Ninject在我的MVC 3应用和我的一个依赖是实体框架:Ninject + ASP.net MVC +实体框架 - 何时处理我的上下文?
interface IFooRepository
{
Foo GetFoo(int id);
}
public EFFooRepository : IFooRepository
{
private FooDbContext context;
public EFFooRepository(FooDbContext context)
{
this.context = context;
}
}
我成立了像这样在Ninject绑定,所以如果我有一个以上的依赖,他们都需要他们最终共享相同的上下文的数据上下文:
Bind<FooDbContext>().ToSelf().InRequestScope();
我不确定什么时候我的上下文将被处置。既然我不是那种实例化它的人,它会被废弃吗?或者它会在垃圾收集时被处置掉吗? Ninject是否知道在完成任何事情时能够处理任何事情?
这就是我所希望的。我相信DbContext实现了IDisposable。事实上,如果没有,我会感到震惊。谢谢! – Dismissile
@Dismissile,是的,DbContext实现IDisposable。 –
哦,非常好。谢谢你的例子。 – Dismissile