我目前有一个列表,其中包含具有字段的项目:“名称,描述,来源, Headers ,......” . 我想从这里转储一个列表,但是根据两个键,即名称和描述,它们是唯一的 . 基本上,我不希望列表中的项目具有相同的名称和相同的描述,但如果它们具有不同的名称和相同的描述,那么它没关系 .
我抬头看着那个用
list.select(x => x.Name).Distinct()
会给我一个具有不同名称的列表,但堆叠它们会违反其中一个唯一键不同,而且相同 .
我也看了一下散列集,但我对它是如何工作完全感到困惑 .
如果有人可以提供帮助,我们将不胜感激 .
3 回答
如果您只是寻找所有不同的名称/描述组合:
您可以使用从HERE获取的以下示例:
或者使用DistinctBy来自MoreLINQ NuGet可用HERE
您应该使用一些唯一/特殊字符/字符串而不是" "来确保UniqueKey真的是唯一的 .