如何尝试从.NET Dictionary中提取密钥列表?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (12)

我需要提取一个键列表等:

Dictionary<string, MyClass>  myDict;
List<String> myKeys = myDict.Keys;

第二行无法编译,因为Keys属性返回“KeyCollection”类而不是关键对象的列表<>。

提问于
用户回答回答于

使用LINQ,可以执行以下操作...

List<String> myKeys = myDict.Keys.ToList();

然而,取决于你的目标是什么与键(选择枚举等),它可能更有意义的工作与密钥集合,而不是转换为列表。

用户回答回答于

KeyCollection实现IEnumerable接口。

可以使用扩展方法将其转换为列表。

List<String> myKeys = myDict.Keys.ToList();

或者使用不同的构造函数:

List<String> myKeys = new List<String>(myDict.Keys);

扫码关注云+社区