Entity framework 使用NOLOCK的实体框架查询
这个问题被问了很多。 我发现了这个 当我测试它时,我注意到带有join的查询 设置事务隔离级别read COMMITED 似乎该解决方案只适用于单表查询 如何标记多表联接查询 将事务隔离级别设置为“读取未提交” 下面是我的测试代码:Entity framework 使用NOLOCK的实体框架查询,entity-framework,Entity Framework,这个问题被问了很多。 我发现了这个 当我测试它时,我注意到带有join的查询 设置事务隔离级别read COMMITED 似乎该解决方案只适用于单表查询 如何标记多表联接查询 将事务隔离级别设置为“读取未提交” 下面是我的测试代码: class Program { static void Main(string[] args) { TransactionOptions transactionOptions = new Transac
class Program
{
static void Main(string[] args)
{
TransactionOptions transactionOptions = new TransactionOptions();
transactionOptions.IsolationLevel = IsolationLevel.ReadUncommitted;
using (var scope = new TransactionScope(TransactionScopeOption.Required, transactionOptions))
{
using (var context = new BloggingContext())
{
(from a in context.Set<Post>()
join b in context.Set<Blog>() on a.BlogId equals b.BlogId
select new { a, b }).FirstOrDefault();
context.Set<Blog>().FirstOrDefault();
context.Set<Blog>().ToArray();
scope.Complete();
}
}
类程序
{
静态void Main(字符串[]参数)
{
TransactionOptions TransactionOptions=新的TransactionOptions();
transactionOptions.IsolationLevel=IsolationLevel.ReadUncommitted;
使用(var范围=新TransactionScope(TransactionScopeOption.Required,transactionOptions))
{
使用(var context=new BloggingContext())
{
(来自context.Set()中的
在a.BlogId上的context.Set()中加入b等于b.BlogId
选择新的{a,b});
context.Set().FirstOrDefault();
context.Set().ToArray();
scope.Complete();
}
}