所以,我正在编写这段代码来执行一个在 30 秒内超时的存储过程(经过一些搜索,我理解为默认值)。当我寻找增加 CommandTimeout 的方法时,我得到了很多建议使用 IObjectContextAdapter 接口设置超时的答案,如下所示:
((IObjectContextAdapter)this).ObjectContext.CommandTimeout = 300;
当我检查上下文对象时,我在数据库对象中找到了 CommandTimeout 属性,当我编写以下代码时,一切正常,超时时间增加到我设置的值:
public MyContext() :
base("name=MyContext")
{
Database.SetInitializer<MyContext>(null);
Database.CommandTimeout = 300;
}
我想知道以这种方式设置 CommandTimeout 是否有任何问题,或者是否推荐使用 IObjectContextAdapter 方法。
提前致谢。