LINQ - 如何编写查询来设置变量bool True或False

时间:2011-03-17 18:50:53

标签: c# linq entity-framework linq-to-entities

我使用asp.net 4 linq和EF4。

我有这个查询,其中CmsSourcesContents是一个导航属性。

在我运行查询时,queryCheck的结果是IQuerable类型。

我需要在Linq查询中评估条件表达,但结果我想要一个Type Bool:

bool queryCheck

知道怎么做吗?谢谢!


  var queryCheck = from cnt in context.CmsContents
                   where cnt.ContentId == myContentIdSelected && cnt.CmsSourcesContents.Any()
                   select cnt;

此查询应该查找特定的cnt并检查它是否有任何关联..并将结果作为bool给我。

2 个答案:

答案 0 :(得分:5)

bool queryCheck = (from cnt in context.CmsContents
                  where cnt.ContentId == myContentIdSelected && cnt.CmsSourcesContents.Any()
                  select cnt).Any();

答案 1 :(得分:3)

您可以在总查询中再次使用Any()以查看是否存在任何匹配项:

var queryCheck = (from cnt in context.CmsContents
               where cnt.ContentId == myContentIdSelected && cnt.CmsSourcesContents.Any()
               select cnt).Any();