【发布时间】:2010-04-04 18:41:27
【问题描述】:
关于管理EntityContext生命周期有很多问题,
例如Instantiating a context in LINQ to Entities
我得出的结论是,实体上下文应被视为工作单元,因此不应重用。太好了。
但是在做一些研究以加快我的数据库访问速度时,我遇到了这篇博文......
Improving Entity Framework Performance
该帖子认为,与其他框架相比,EF 的性能不佳通常是由于每次需要新的 EntityContext 对象时都会创建 EntityConnection 对象。
为了测试这一点,我在 Global.asax.cs Application_Start() 中手动创建了一个静态 EntityConnection。
然后我将所有上下文 using 语句转换为
using( MyObjContext currContext = new MyObjeContext(globalStaticEFConnection)
{
....
}
据我所知,这似乎加快了速度,没有任何错误。
但是这样安全吗?
使用应用程序范围的静态 EntityConnection 会引入竞争条件吗?
最好的问候, 凯文
【问题讨论】:
-
这可能会引发一场圣战。 ;)
标签: c# .net asp.net entity-framework entityconnection