如何在Entity Framework 6 DbContext.Database.BeginTransaction中配置事务超时? [英] How do you configure the Transaction time out in Entity Framework 6 DbContext.Database.BeginTransaction?

查看:476
本文介绍了如何在Entity Framework 6 DbContext.Database.BeginTransaction中配置事务超时?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用代码如

  using(var tran = Ctxt.Database.BeginTransaction()){

如何设置事务超时的值?

解决方案

我的建议是使用 Database.CommandTimeout

  var timeout = 60; //或者你需要的任何值
Ctxt.Database.CommandTimeout = timeout;
使用(var tran = Ctxt.Database.BeginTransaction())
{
//做东西
}
//如果你是将要配置上下文
Ctxt.Database.CommandTimeout = null; //设置默认超时

当然,你可以很好地将它包装在一些类中。 >

Using code like

using (var tran = Ctxt.Database.BeginTransaction()) {   

How can I set a value for the transaction timeout ?

解决方案

My suggestion would be to use Database.CommandTimeout:

var timeout = 60; //or whatever value you need
Ctxt.Database.CommandTimeout = timeout;
using (var tran = Ctxt.Database.BeginTransaction())
{
    //do stuff
}
//this line can be skipped if you're about to dispose context
Ctxt.Database.CommandTimeout = null; //setting back default timeout

Of course, you can nicely wrap it in some class.

这篇关于如何在Entity Framework 6 DbContext.Database.BeginTransaction中配置事务超时?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆