2014-10-28 51 views
-1

選擇我想要寫SQL命令的實體查詢:凡在實體framwork

SELECT * FROM provider WHERE serial 
     NOT IN (SELECT providerRef as Serial FROM ProviderTeam WHERE TeamRef=134) 

我在網上搜索,但沒有答案。

+0

檢查http://stackoverflow.com/questions/13342817 /實體框架屬性-在子句使用率。你也可以使用EXISTS重寫查詢並參見http://stackoverflow.com/questions/2379183/entity-framework-and-exists-clause – 2014-10-28 07:22:21

回答

1

你可以重寫你的IN子句EXISTS和使用下面的命令LINQ:

var q = from p in dbContext.Providers 
     where !dbContext.ProviderTeams.Any(pt => pt.TeamRef == 134 && pt.providerRef == p.serial) 
     select p; 
-1

我希望這是你所需要的:

using (var dbObj = new [DB_NAME]Entities()) 
{ 
    var list = dbObj.provider.SqlQuery("SELECT * from provider where serila NOT IN (select providerRef as Serial from ProviderTeam where TeamRef=134)").ToList(); 
}