1
內委託的BeginInvoke我有這樣如何調用的DbContext
using (SomeDBContext db = new SomeDBContext())
{
foreach (var r in someColection)
{
MyDelegate.BeginInvoke(db, parm1, parm2, etc, null, null);
}
}
的問題是一個代碼,餵食給MyDelegate的函數使用傳遞給它的分貝的DbContext,由於委託運行異步時,數據庫上下文在函數試圖訪問數據庫時被關閉。有人可以幫助解決這個問題嗎?謝謝你太多了!
謝謝!是的,我害怕這一點。我知道我可以在方法內部創建新的上下文,但最終我會爲並行線程實例化一堆上下文,而這正是我試圖避免的。所以它看起來像是使用了一堆上下文(每個線程1個),或者,在這種情況下不使用委託。這是對的嗎? – Yogi
@Yogi上下文實例化非常便宜,不要害怕每個線程創建一個 –