2

我注意到 NerdDinner 从来没有处理过 DataContext。这对我来说似乎很奇怪。他们有一个 Repository 类,它创建数据上下文的私有成员,该成员在存储库类的生命周期内一直存在——谁知道那是多长时间,因为它是在控制器构建时再次作为私有成员创建的变量并且从不取消引用。控制器何时取消引用?

我相信这个问题围绕着传递 IQueryable 类型,在你迭代它们时必须有一个开放的连接。但这是否意味着会有一些悬空的开放连接?

4

1 回答 1

1

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

于 2009-11-20T17:49:44.227 回答