【发布时间】:2015-12-12 01:07:40
【问题描述】:
如何使用 Entity Framework 4 将带有“not in”关键字的 SQL 转换为 LINQ to Entities? 所有以“ID”结尾的字段都是整数类型。
SELECT *
FROM IRSampleCompletionGoal as goal_tbl
where
(Cast(goal_tbl.[TermID] as nvarchar) +' '+Cast(goal_tbl.[UserID] as nvarchar)+' '+Cast(goal_tbl.[CourseID] as nvarchar)+' '+cast(goal_tbl.[StudentID] as nvarchar)+' '+cast(goal_tbl.[ObjectiveID] as nvarchar))
NOT IN
(
select (Cast([TermID] as nvarchar) +' '+Cast([UserID] as nvarchar)+' '+Cast([CourseID] as nvarchar)+' '+cast([StudentID] as nvarchar)+' '+cast([ObjectiveID] as nvarchar))
from IRSampleCompletionCurrentStatistics
where ((ArtifactID is not null) OR (NoArtifactChecked='True' ))
)
【问题讨论】:
-
创建一个数组然后
Not thisArray.Contains("somevalue") -
或
!thisArray.Contains("somevalue")用于 C#。
标签: c# sql-server vb.net entity-framework linq