C# Distinct()不工作

C# Distinct()不工作,c#,.net,collections,lambda,distinct,C#,.net,Collections,Lambda,Distinct,我试图从集合中获取不同值的列表。但我不能这样做 例如: var someValue = (Data.Cast<IDetailType>().Select(x => x.Common.Provider) .Union(Data.Cast<NDetailType>().Select(x => x.Common.Provider))).Distinct(); var someValu

我试图从集合中获取不同值的列表。但我不能这样做

例如:

var someValue = (Data.Cast<IDetailType>().Select(x => x.Common.Provider)
                                         .Union(Data.Cast<NDetailType>().Select(x => x.Common.Provider))).Distinct();
var someValue=(Data.Cast().Select(x=>x.Common.Provider)
.Union(Data.Cast().Select(x=>x.Common.Provider)).Distinct();

此查询将返回所有数据集以及重复数据。

您需要告诉Distinct,如何比较对象,请参阅重载
Distinct(IEqualityComparer)

看看怎么做