我应该更频繁地处理EF上下文吗?

Rod*_*Rod 2 .net wpf entity-framework-4

我正在研究我的第一个使用实体框架的应用程序.我有一个简单的WPF应用程序,它是基于页面的.我在页面的类级别定义了EF上下文,并在页面的load事件中实例化它.然后基本上我只是把它留在那里,使用它作为用户做出各种选择等等.然而,多年的编程经验使我认为我不应该只是打开这个上下文.每当我需要将它用于某些东西时,我是否应该新建它,或者它不重要?

我正在使用VS 2010,.NET 4.0.

Eri*_*sch 5

EF Contexts的设计是短暂的.他们不做大量的内务管理,并且倾向于分配记忆而不用担心在短期内释放它.此外,更改跟踪会持续一段时间并且是累积的,因此上下文存在的时间越长,它分配的更改跟踪的内存就越多.

经验法则,使用必要的最小范围,并将上下文保持在有意义的最短时间内.