1
下應該返回「C」不使用ForEachAsync時等待,但它返回「B」與等待內部操作
using System.Data.Entity;
//...
var state = "A";
var qry = (from f in db.myTable select f);
await qry.ForEachAsync(async (myRecord) => {
await DoStuffAsync(myRecord);
state = "B";
});
state = "C";
return state;
它不會等待DoStuffAsync通過,然後完成,state="C"
運行稍後state="B"
執行(因爲裏面它仍在等待)。
我不確定自己的ForEachAsync會如何與Action版本一起使用。我只是刪除了使用System.Data.Entities;並有我自己的命名空間。 – Todd