IEqualityComparer クラスを作成せずに、 Linq を使用してコレクションから要素の個別のセットを選択したいと考えています。で使用する IEqualityComparer として評価されるラムダ式を作成する方法がわかりませんDistinct()
。そのため、グループ化を使用して、たとえば、異なる名前を持つ顧客を選択しました。
var distinctCustomers = new List<Customer>();
var groups= customers.GroupBy (cust => cust.Name);
foreach (var g in groups)
{
foreach (var customer in g)
{
distinctCustomers.Add (customer);
break;
}
}
しかし、これは厄介なようです。
Distinct
ラムダ式で使用したい
var distinctCustomers = customers.Distinct ( <lambda here ?> )
または上記よりもクリーンな Linq 式。
何か案は?