我想在orderdetail
表中插入多行。
我使用System.Transactions.TransactionScope
确保所有行都能插入。
但是,当我尝试运行它时,我在orderdetail
上遇到了主键违规。
我使用自定义代码生成主键。
此外,我还实现了read-uncommitted选项来读取临时数据。
TransactionOptions To = new TransactionOptions(){
IsolationLevel = System.Transactions.IsolationLevel.ReadUncommitted
};
using (TransactionScope s = new TransactionScope(TransactionScopeOption.RequiresNew,To))
foreach (string[] item in allItem)
{
//get the item to the entity
E_item = new E_item(C_Orderd.getNextOrddId(DateTime.Now.Date.ToString("yyyyMMdd")),item[0],item[2],item[3]);
//insertItem
C_Orderd.insertItem(E_item);
}
s.Complete();
}
}
(我已经启用了msdtc,但它只是冻结了什么都没做)
如何使用事务范围或其他方法解决此问题 非常感谢。