LINQ - 不返回与SQL Server相同的值

时间:2013-05-21 08:20:50

标签: c# .net sql linq entity-framework

我有一个非常奇怪的问题。

我有这个问题:

var systemAppEntityViewModelFieldCustom_SecurityByUserList = (from t in coreEntityModel.SystemAppEntityViewModelFieldCustom_SecurityByUser
                where (t.SystemAppUserID == CurrentSystemAppUser.SystemAppUserID)
                    && (t.SystemCultureID == CurrentSystemAppUser.SystemCultureID)
                select t).ToList();

为“CustomFilterID”字段生成这些值:

enter image description here

正如您所看到的,对于所有4个项目,“CustomFilterID”= 1,但是当我检查SQLProfiler并在SQLServer中运行结果查询时,我得到:

enter image description here

“CustomFilterID”的变体= 1 AND 2。

任何想法为什么LINQ会产生“CustomFilterID”= 1的所有4个项目?

1 个答案:

答案 0 :(得分:2)

发现了这个问题。我的View未选择表格的PK列,并且通过将表格的PK列添加到View的选择列表中,它生成了正确的结果。