我正在使用EF7(EF核心)。 當我試圖更新數據庫的項目,如這一個方法...實體框架7(核心):DataReader必須關閉異常
using (var db = new DBContext())
{
var deadSources =
await
db.Source.Where(x => !x.Item.Any())
.ToListAsync();
foreach (var srs in deadSources)
{
srs.InspectionFailed = true;
srs.InspectionFailedDescription = "ERROR";
}
await db.SaveChangesAsync();
}
using (var db = new DBContext())
{
var aliveSources =
await
db.Source.Where(x => x.Item.Any())
.ToListAsync();
foreach (var srs in aliveSources)
{
srs.InspectionFailed = false;
srs.InspectionFailedDescription = string.Empty;
}
await db.SaveChangesAsync(); // Exception here
}
...這將引發異常:
已經有與此命令相關的開放其中的DataReader必須先關閉 。
我該如何避免這種情況?每個數據庫請求有兩種不同的上下文,所以我不明白爲什麼會發生這種情況。
此代碼是單個使用語句,引發異常。這就是爲什麼我分開它。但沒有運氣。 – AsValeO