- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 .NET Core 项目中,我使用 EntityFramework,并且在我的类存储库中注入(inject)了一个 DbContext (shopContext)。我有下一个查询:
var res = shopContext.Orders.Where(x => x.Status == 1).Sum(p => p.Total);
偶尔,Orders 表正在做维护任务,表被锁定了。对于此查询,我等不及维护任务了,我需要使用事务中的 IsolationLevel.ReadUncommited
选项访问表:
using (var transaction = mutuaContext.Database.BeginTransaction(IsolationLevel.ReadUncommitted))
{
var res = shopContext.Orders.Where(x => x.Status == 1).Sum(p => p.Total);
}
问题是我只希望上下文在这些查询中使用此 IsolationLevel 配置执行查询,但下一个查询继续执行,尽管表尚未锁定。
为什么以下查询不等待表解锁?
我的代码示例:
using (var transaction = mutuaContext.Database.BeginTransaction(IsolationLevel.ReadUncommitted))
{
var res = shopContext.Orders.Where(x => x.Status == 1).Sum(p => p.Total); // this code would be executed
}
var total = shopContext.Orders.Where(x => x.Status == 0).Sum(p => p.Total); // this code would NOT be executed but is executed
我不明白上下文如何获取事务配置。我希望有人向我解释一下。
我尝试在第一次查询后调用 transaction.Commit()
,但仍然无法正常工作。
最佳答案
使用
yourContext.Database.BeginTransaction(IsolationLevel.ReadUncommitted)
// your normal queries via yourContext goes here
// do not forget to end the transaction
关于c# - 仅对 DbContext 中的一个查询使用选项 IsolationLevel.ReadUncommited,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58100472/
根据这个post的回答它指出: Did you know that ReadUncommitted will revert to Serialized isolation unless you've
这段代码我有一些问题。当我运行它时,我希望它不锁定事务使用的表。为了实现这个目标,我将隔离级别设置为 ReadUncommited。 问题是它仍然锁定表,就像 isolationLevel 是可序列化
在 .NET Core 项目中,我使用 EntityFramework,并且在我的类存储库中注入(inject)了一个 DbContext (shopContext)。我有下一个查询: var res
假设我们有一个带有自增主键的表。我想加载所有大于我上次看到的 ID 的 ID。 SELECT id FROM mytable WHERE id > 10; 采用简单的方法,我可能会跳过 ID: 交易
我想在单个事务范围内打开多个连接,以便每个连接都可以看到前一个连接所做的更改。 我需要这个来进行测试 - 真实代码写入数据库,测试代码验证数据是否实际插入/更新。最后我回滚事务范围,这样真实的数据库就
在大型企业中,我应该在使用 NHibernate 时默认使用 ReadCommitted 还是 ReadUncommited 事务隔离级别? 通过使用 ReadCommitted 隔离,我一直面临着一
我在一个利用 NHibernate 的项目中将 sqlite 用于测试用例。一切都很好,除了当我尝试创建一个 ReadUncommitted 事务时: 例如Session.BeginTransacti
您好,当调用代码有待处理事务时,我无法从数据库中读取数据。像这样: f1() { DbTransaction t = Connection1.BeginTransaction(IsolationLev
我已经设法使 SqlDependency 正常工作,但前提是我不在我认为与 SqlDependency 无关的 SQL 事务中使用 IsolationLevel.ReadUncommited。 当我在
在 MSSQL 2008 上使用 EF 进行查询更新时存在性能和锁定问题。所以我设置了ReadUncommitted transaction isolationlevel,希望可以这样解决, 之前 u
我是一名优秀的程序员,十分优秀!