簡體   English   中英

EF + async =創建模型時無法使用上下文?

[英]EF + async = The context cannot be used while the model is being created?

設置是非常標准的。 創建了一個視圖以及帶有SQL Server連接字符串的存儲庫。 通過存儲庫的視圖模型,並在視圖模型的構造函數上,我從存儲庫中調用一個集合。 一切正常,直到我嘗試使用async / await組合異步進行操作,但現在在調用存儲庫的集合時收到錯誤消息“在創建模型時無法使用上下文”。

舊的工作代碼:

void FillPeopleList()
{
  PeopleList = _repository.GetPeople();
}

新的破損代碼:

async void FillPeopleList()
{
  await Task.Run(()=>
  {
    PeopleList = _repository.GetPeople(); // Error
  });
}

EF不是線程安全的。

您不能在多個線程上使用相同的上下文。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM