实体框架等价于 READPAST

pie*_*rre 5 sql-server entity-framework nonblocking

我们有一个表,它通过数据库作业每约 15 分钟刷新一次,以使用来自各种来源的最新更改来保持前端更新。

过去为了读取这个表,调用了一个带有表提示 READPAST 的存储过程。我相信这样做的目的是确保表格可以按计划自由更新,但您也只能获得干净的数据供公众使用。

在带有 EF6 的 LINQ 中,有没有一种方法可以使用 TransactionScope 或其他一些机制来做到这一点?我知道没有明确支持开箱即用的表格提示,因此我正在寻找替代方案。我们想更多地使用 LINQ 和存储过程。更少(尤其是当他们所做的只是选择时)。

Vin*_*nie 0

您可以使用事务隔离级别。读取未提交将允许您读取尚未提交到表的数据,但可能有适合您的不同隔离级别。不管怎样,这里有一篇文章解释了它:

http://blogs.msdn.com/b/diego/archive/2012/04/01/tips-to-avoid-deadlocks-in-entity-framework-applications.aspx