为什么我的查询仍然返回项目?

时间:2012-07-12 14:18:24

标签: linq-to-sql

下午,

我有一个LINQ查询,它根据特定条件对所有产品进行计数。

 int processingProductsCount = dc.abcProducts.Where(p => p.prodPublished == 1 && p.pricePublished != true || p.imgPublished != true || p.stockPublished != true).Count();

基本上我只想返回prodPublished为1且ANDPublished,imgPublished,stockPublished都是假的项目数。

然而,它计算所有具有pricePublished,imgPublished,stockPublished的项都是假的。我基本上需要得到0的结果。

我这样做,所以我可以隐藏一个按钮,只有当prodPublished为1且pricePublished,imgPublished,stockPublished都是false时才需要。但是按钮仍显示为计算pricePublished,imgPublished,stockPublished全部为false的所有项目。

对不起,如果写得不好,那就难以解释。任何人都可以看到我的LINQ查询的问题吗?

更新:看起来查询将所有没有prodPublished的产品带回1

1 个答案:

答案 0 :(得分:2)

这应该可以解决问题

int processingProductsCount = dc.abcProducts.Count(p => p.prodPublished == 1 && (!p.pricePublished && !p.imgPublished && !p.stockPublished));