2 つのフィールドに基づいて重複オブジェクトを見つけようとしていますが、3 番目のフィールドも null の場合のみです
ItemNumber, Name, Pricebook, Parent
Item1, A, B, <null>
Item2, A, B, Item1
Item3, A, B, <null>
Item4, A, B, Item1
Item5, A, B, Item2
したがって、上記のリストでは、2 つの重複アイテムのみが実質的に Item1 と Item3 です。
var duplicateItemsList =
from i in items
group i by new { i.ItemNumber, i.Pricebook, i.Parent } into d
where d.Count() > 1
select new { ItemNumber = d.Key.ItemNumber, Pricebook = d.Key.Pricebook, Parent = d.Key.Parent, Count = d.Count() };
私が抱えている問題は、Linq クエリで null フィールド値のチェックを行っていることです。
上記の Linq クエリの後、重複した ItemNumber フィールド値と Pricebook フィールド値を含むリストを取得したいだけです。