1、参考https://blog.csdn.net/weixin_30563319/article/details/99547940
https://www.cnblogs.com/Zhaowh/p/3904018.html
2、报错代码
//"This SqlTransaction has completed; it is no longer usable."
//"无法执行该事务操作,因为有挂起请求正在此事务上运行。"
updateDetails.ForEach(async x =>
{
await this._purchaseDetailRepository.UpdateAsync(x).ConfigureAwait(false);
});
3、解决办法1,参考https://blog.csdn.net/weixin_30563319/article/details/99547940
解决办法2,如下,将异步转同步。
updateDetails.ForEach(x =>
{
var waiter = this._purchaseDetailRepository.UpdateAsync(x).ConfigureAwait(false).GetAwaiter();
waiter.GetResult();
});
解决办法3,不使用foreach()
foreach (var item in updateDetails)
{
await this._purchaseDetailRepository.UpdateAsync(item).ConfigureAwait(false);
}