C# 如何从附带的delete SQL中创建delete LINQ命令?
我使用的是MVC3、EF4.1和C 我有这个SQL代码,我想将其转换为LINQ,但我正在努力掌握正确的LINQ,因此我正在向您的专家LINQ专家寻求帮助 从触发器获取的删除SQL是:C# 如何从附带的delete SQL中创建delete LINQ命令?,c#,linq,entity-framework,linq-to-entities,C#,Linq,Entity Framework,Linq To Entities,我使用的是MVC3、EF4.1和C 我有这个SQL代码,我想将其转换为LINQ,但我正在努力掌握正确的LINQ,因此我正在向您的专家LINQ专家寻求帮助 从触发器获取的删除SQL是: DELETE FROM Feature WHERE NOT EXISTS ( SELECT LU1 AS LUID FROM dbo.CLASS WHERE SectionId = Feature.SectionId AND LU1 = Feature.StdLibraryItemId UNION
DELETE FROM Feature
WHERE NOT EXISTS
(
SELECT
LU1 AS LUID
FROM dbo.CLASS WHERE SectionId = Feature.SectionId AND LU1 = Feature.StdLibraryItemId
UNION
SELECT
LU2 AS LUID
FROM dbo.CLASS WHERE SectionId = Feature.SectionId AND LU2 = Feature.StdLibraryItemId
)
非常感谢。在EF中它看起来像这样(假设您的DbContext是
db
):
var featuresToRemove = db.Feature.Where(f => !db.Class.Any(c => c.SectionID == f.SectionID && (c.LU1 == f.StdLibraryItemID || c.LU2 == f.StdLibraryItemID ))
foreach (var feature in featuresToRemove)
{
db.Feature.Remove(feature);
}