2016-12-05 108 views
2

實體框架插入存儲過程中嘗試使用實體框架,像這樣一個循環來執行插入存儲過程:在一個循環

var context = new Entities() 
var items = context.GetAllItems().ToList(); 

foreach(var item in items) 
{ 
    // Other select and update procedures 
    context.InsertProcedure(item.Prop1); 
} 

context.SaveChanges(); 

,但我得到一個例外。

新的事物是不允許的,因爲有在會議

任何人有過這樣運行的其他線程?

+1

,如果你有你的存儲過程中的SELECT語句可能會出現這種...你有這樣的事情? ..如果情況並非如此,還有其他兩個選項:如果您已經使用EF來映射實體,爲什麼還需要「插入」sp?選項2.您是否考慮過使用TransactionScope? –

+0

@DavidEspino有一個SELECT @@ identity聲明,我必須使用SP,它是在其他地方使用的可重用部分,事務範圍是什麼? – Yaman

回答

1

原來還有一個異常,但看起來像這個異常總是在循環內出現問題時拋出。

我做什麼,我改變了存儲過程的返回類型爲無模型瀏覽器