我正在尝试遍历列表并对列表中的每个项目执行存储过程。
foreach(value in values) {
Context.Database
.ExecuteSqlCommand(
"sp_ProcedureName @value1, @value2, @value3",
new SqlParameter("@value1", value.value1.ToString()),
new SqlParameter("@value2", value.value2.ToString()),
new SqlParameter("@value3", value.value3.ToString()));
}
我不断收到以下错误:
我也尝试使用异步方法。但这似乎不起作用。有什么我想念的吗。或者不可能在循环内运行存储过程?
最佳答案
也许填充 values
的 db 调用已经打开了一个事务,停止了内部调用功能。
尝试在填充 .ToList()
的调用中使用 values
以首先预加载所有值。
关于c# - Entity Framework 在循环中执行存储过程,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47785961/