C#:我有一個對象集合。 T有2個屬性。屬性A和屬性B.此集合需要遵守的規則是,A和B的值的組合在集合中必須是唯一的。換句話說,A和B需要充當複合主鍵。是否有Linq操作來確定集合中是否有一組屬性具有相同值的項目?
在Linq中有一個操作我可以用來檢查這種情況嗎?我希望它是這樣的
if (items.Select(x => x.Name).Distinct().Count() != items.Select(x => x.Name).Count())
上面的語句是我會怎樣檢查是否存在具有重複名稱的集合中的項目,但我不知道如何做到這一點的不止一個屬性。
這裏要小心。自定義比較器適用於LINQ to objects,但會在LINQ to SQL或Entity Framework中引發運行時異常。 – 2009-10-27 11:56:37