Linq查询超时强制

时间:2019-02-15 05:02:28

标签: c# linq

如果要花费超过1分钟的时间,我想强制使查询超时,这是我只希望进行1次查询。

using (var ctx = new ApplicationDbContext(schemaName))
{
.... Code
var data = ctx.tbl.Where() ....
.... Code
var data1 = ctx.tbl.Where() ....
.... Code
var data2 = ctx.tbl.Where() ....
}

如果我为上下文设置超时,它将应用于所有查询。 有什么方法可以使特定查询超时?

1 个答案:

答案 0 :(得分:0)

您可以尝试一下。 在处理此类问题时,我实际上所做的是:

  • 创建不同的方法,并将一种方法的结果传递给另一种方法。
  • 或将记录存储在Auto property中,并以所需的方法进行访问。
  • 因此,如有可能,请为data1data2data3创建不同的方法。
  • 下面是代码。

方法1:

    using (var ctx = new ApplicationDbContext(schemaName))
    {
      .... Code
      var data = ctx.tbl.Where() ...
    }

数据2的方法2:

    using (var ctx = new ApplicationDbContext(schemaName))
    {
      .... Code
      var data1 = ctx.tbl.Where() ...
    }

数据3的方法3:

    using (var ctx = new ApplicationDbContext(schemaName))
    {
      .... Code
      var data2 = ctx.tbl.Where() ...
    }