2012-07-12 46 views
0

下午,爲什麼我的查詢仍然返回項目?

我有一個LINQ查詢,它用一定的條件計算所有產品。

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

基本上我只是想返回有1 prodPublished和pricePublished,imgPublished,stockPublished全是假的項目數。

但是它計算所有有價格的物品已發佈,imgPublished,stockPublished都是假的。我基本上需要得到0.

我這樣做,所以我可以隱藏一個按鈕,這只是當prodPublished是1時需要和價格發佈,imgPublished,stockPublished都是假的。但是按鈕仍然顯示出價格發佈,imgPublished,stockPublished都是虛假的所有項目。

對不起,如果這寫得不好,其種類很難解釋。任何人都可以看到我的LINQ查詢的問題?

更新:它看起來像查詢被帶回那些沒有prodPublished所有的產品爲1

回答

2

這應該做的伎倆

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

得到這個錯誤...運算符「&&」不能應用於'bool'類型的操作數?和'布爾?' – thatuxguy 2012-07-12 14:34:04

+0

我將它改爲... int processingProductsCount = dc.tweProducts.Count(p => p.prodPublished == 1 &&(p.pricePublished == false || p.imgPublished == false || p.stockPublished ==假)); ...然後工作好吧:)謝謝。 – thatuxguy 2012-07-12 14:36:22

+0

太好了。這些條件通常會把你趕出去。 – stevethethread 2012-07-12 14:40:22

相關問題