批量新增操做在業務系統中十分常見,尤爲是主從表中對從表的批量處理。昨天在對wms主從表進行業務操做時使用了c#中list自帶的函數ForEach對從表批量新增,代碼以下:數據庫
在無併發的狀況下接口請求正常c#
併發測試時.net core host 程序被意外終止:併發
測試結果表示第一次請求成功,第二、3次請求失敗致使程序終止。查看日誌以下:函數
日誌代表時ef core執行期間出了問題,查找解決方案以下:測試
再次併發執行結果:spa
雖然大部分執行成功但任有失敗的機率,再次查看失敗日誌以下:.net
解決3d
棄用list自帶的ForEach函數,改用foreach:日誌
200併發測試:blog
併發請求所有成功,數據庫三種從表條目一致: