批量新增操做在业务系统中十分常见,尤为是主从表中对从表的批量处理。昨天在对wms主从表进行业务操做时使用了c#中list自带的函数ForEach对从表批量新增,代码以下:数据库
在无并发的状况下接口请求正常c#
并发测试时.net core host 程序被意外终止:并发
测试结果表示第一次请求成功,第二、3次请求失败致使程序终止。查看日志以下:函数
日志代表时ef core执行期间出了问题,查找解决方案以下:测试
再次并发执行结果:spa
虽然大部分执行成功但任有失败的几率,再次查看失败日志以下:.net
解决3d
弃用list自带的ForEach函数,改用foreach:日志
200并发测试:blog
并发请求所有成功,数据库三种从表条目一致: