0

我有一个模型(M),其中包含两个表(A 和 B)。当我从 MVC 应用程序运行代码以从 (A) 中获取行时,如下所示:

var context =new ClaimsHistorical();
context.CommandTimeout = 120;
IList<ClaimsSLAMonth> list = context.ClaimsSLAMonths.Where(x=>x.timeperiod == "2012-03").ToList();
var final = list.Select(c => new[]{
            c.branch.ToString().Trim(), c.NLPR_SLA.ToString() ?? null, c.NLPR_count.ToString() ?? null, c.NLPR_AvgLocktime.ToString() ?? null, c.NLPR_PIn.ToString() ?? null, c.NLPR_POut.ToString() ?? null,
            c.NLGA_SLA.ToString() ?? null, c.NLGA_count.ToString() ?? null, c.NLGA_AvgLocktime.ToString() ?? null, c.NLGA_PIn.ToString() ?? null, c.NLGA_POut.ToString() ?? null
        });

当我为 list.Select 设置断点以检查命令时,它为我提供了在 SSMS 中工作的 SQL

它返回 0 行(无错误、警告、消息)。我复制了 EF 正在“执行”的 SQL 查询并将其粘贴到 SQL Server Management Studio,它返回了大约 5 行。

此外,当我运行完全相同的代码时,除了将表名替换为 (B) 之外,我得到了正确的行。我试图重新创建模型,但它仍然没有返回任何内容。我是否遗漏了一些明显的东西,或者有什么严重的错误?

4

1 回答 1

1

那么显然重新启动计算机解决了问题?

如果有人对此有任何可能的原因(缓存、设置等),这将有助于防止这种情况再次发生。

于 2012-04-13T15:18:32.480 回答