【发布时间】:2016-03-03 05:22:19
【问题描述】:
我有一个 KeyValuePair 列表,它的值也是列表,例如
List<KeyValuePair<string, List<string>>> ListX = new List<KeyValuePair<string,List<string>>>();
ListX.Add(new KeyValuePair<string,List<string>>("a",list1));
ListX.Add(new KeyValuePair<string,List<string>>("b",list1));
ListX.Add(new KeyValuePair<string,List<string>>("a",list1));`
我希望列表中每个 KeyValuePair 的键不重复,只有键,我可以在这个列表中使用 Distinct 吗?
例如,我希望删除列表中具有“a”键的第三项,因为它是重复的。
【问题讨论】:
-
请改用
Dictionary<string,List<string>>。如果键已经存在,添加方法会抛出异常。您可以先使用ContainsKey方法检查密钥是否已存在。或者您可以使用索引器而不是 Add 方法,如果键已经存在,该方法会覆盖旧值。dic["a"] = list1;
标签: c# asp.net list keyvaluepair