如何在实体框架核心中使用NOLOCK读取/选择a?(避免OLTP数据库中的锁定/阻塞/死锁)。这是一个示例选择查询。
var data= _dbContext.Set<ProductOrder>()
.Where(c => c.ProductTypeId == this.productTypeId && c.saleYear == this.saleYear)
.ToList();
使用Net Core 3.1和SQL Server 2016数据库。
1条答案
按热度按时间icnyk63a1#
您可以将
NOLOCK
与EF Core
一起使用,如下所示更好的解决方案:
您可以创建一个扩展方法来创建具有
ReadUncommitted
状态的TransactionScopeOption
:用法:
注:
如果要为
async
方法创建具有ReadUnCommited
状态的事务,则应在TransactionScope
中使用TransactionScopeAsyncFlowOption.Enabled
。这个存储库可能对你很有帮助。
更多信息:Implementing NOLOCK in EntityFramework .