2012-07-26 188 views
1

我通過我的多列的表試圖組和檢查,如果分組計數等於2。我有查詢這部分工作的值LINQ檢查是否存在在列表

var query = from product in Products 
      group by new { product.Product, product.Location, product.Customer } into grp 
      where grp.Count() != 2 

的產品有另一個屬性類別,它只能有兩個值「高」&「低」。 如何更改此查詢以處理除分組計數以外的類別檢查。

Product Location Customer Category 
    A   X   C1   High 
    A   X   C1   Low 
    A   Y   C1   High 
    A   Y   C1   Low 
    A   Y   C1   Low 
    B   X   C1   High 
    B   X   C1   Medium 

在上面的例子中,除了在位置X和客戶C1產品A,所有其他記錄都是無效的。位置Y有兩個低點,產品B有一個不屬於列表的中等類別:高&低。

回答

0

如果你希望只特定類別,使用where ..表達:

var query = from product in Products 
      where product.Category == "Low" || product.Category == "High" 
      group ... 
+0

感謝。在我的情況下,我想確定類別不是低或高的記錄,如果它們是低和高,那麼我需要確保只有一個低和一個高記錄。我可以看到如何完成兩個不同的查詢,但希望我可以使用單個查詢來實現此目的。 – user320587 2012-07-26 19:38:19