MyClass> Dictionary<字符串;to List>其中Ke

本文关键字:KeyValuePair string Ke List 其中 gt Dictionary 字符串 MyClass to | 更新日期: 2023-09-27 18:17:01

Dictionary<string, MyClass> dict = new Dictionary<string, MyClass>();
//where MyClass has an override for ToString()

现在我如何从dict中获得List<KeyValuePair<string, string>>,其中KeyValuePair中的值如果MyClass.ToString()和KeyValuePair中的键与dict的值相同…?

有简单的方法吗?如何使用IDictionary.ToList<>()函数呢?

MyClass> Dictionary<字符串;to List<KeyValuePair<string >>其中Ke

没有经过测试/编译,但类似的东西应该可以工作:

dict.Select(kvp => new KeyValuePair<string, string>(kvp.Key, kvp.Value.ToString())).ToList()

如果语法不是100%正确,我希望你能明白。

使用LINQ:

var list = dict.Select(k => 
  new KeyValuePair<string,string>(k.Key, k.Value.ToString()))
  .ToList();