关于管理EntityContext生命周期有很多问题,
我得出的结论是,实体上下文应被视为工作单元,因此不应重用。伟大的。
但是在做一些研究以加快我的数据库访问时,我遇到了这篇博文......
该帖子认为,与其他框架相比,EF 的性能不佳通常是由于每次需要新的 EntityContext 对象时都会创建EntityConnection对象。
为了测试这一点,我在Global.asax.cs Application_Start()中手动创建了一个静态 EntityConnection 。
然后,我使用语句将所有上下文转换为
using( MyObjContext currContext = new MyObjeContext(globalStaticEFConnection)
{
....
}
据我所知,这似乎加快了速度,没有任何错误。
但这安全吗?
使用应用程序范围的静态EntityConnection会引入竞争条件吗?
最好的问候, 凯文