以NerdDinner为例,何时应该处理DataContext

时间:2009-11-20 17:19:28

标签: asp.net-mvc nerddinner

我注意到NerdDinner没有处理DataContext。这对我来说似乎很奇怪。它们有一个Repository类,它创建数据上下文的私有成员,它在存储库类的生命周期中挂起 - 谁知道它有多长,因为它是在控制器构建时再次作为私有成员创建的变量,永不解除引用。什么时候控制器被取消引用?

我认为问题围绕着传递IQueryable类型,它们在迭代它们时必须具有开放连接。但这不是意味着会有一些悬空的开放联系吗?

1 个答案:

答案 0 :(得分:1)

使存储库本身是一次性的。处置存储库时处置数据上下文。覆盖Controller.Dispose并在那里部署存储库。执行视图时,控制器仍处于活动状态。