在我的 C++ 程序中,我的程序有问题,我一次通过数据库运行太多的东西,并且出现错误。我该如何解决这个问题?
最佳答案
假设您已经使用服务器端代码更新了您的代码。这是解决死锁的一种方法。
首先您需要了解默认情况下 Entity Framework 事务隔离级别是可序列化。这是关于 SQL server Isolation levels. 的更多信息
它声明对于可序列化:
- 在当前事务完成之前,其他事务不能修改当前事务已读取的数据。
因此您需要做的是将您的 EF 事务范围隔离级别更改为快照示例:
using (var scope = new TransactionScope(TransactionScopeOption.Required, new
TransactionOptions { IsolationLevel= IsolationLevel.Snapshot }))
{
// do something with EF here
scope.Complete();
}
关于c++ - 数据库有问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45191880/