已經有關於管理的EntityContext一生許多問題,管理EntityConnection一生
例如Instantiating a context in LINQ to Entities
我得出的結論是,實體上下文應該被視爲一個工作單元,因此不會被重用。大。
但在做一些研究,對於加快我的數據庫訪問,我碰到這個博客帖子...
Improving Entity Framework Performance
員額認爲的EF表現不佳相對於其他框架往往是由於EntityConnection每次創建對象時需要新的對象EntityContext。
爲了測試這個,我手動在Global.asax.cs中創建了一個靜態EntityConnection Application_Start()。
我然後轉換使用陳述我的所有方面到
using(MyObjContext currContext = new MyObjeContext(globalStaticEFConnection)
{
....
}
這似乎已經加快了一點東西,沒有任何錯誤,到目前爲止,據我可以告訴。
但這是安全的嗎?
是否使用應用程序範圍的靜態EntityConnection引入競爭條件?
最好的問候, Kervin
這可能會開始一場神聖的戰爭。 ;) – Nix 2010-04-04 18:44:36