C#KeyValuePair <string,int> List - 到<string>而不保留int值

Сте*_*чев 3 c# list key-value

我的初始化是:

List<string> convertedList = new List<string>();  
List<KeyValuePair<string, int>> originalList = new List<KeyValuePair<string, int>>();
Run Code Online (Sandbox Code Playgroud)

我基本上要填充convertedList在字符串值originalList
所以如果originalList有一些项目:["foo",5],["bar",16],["baz",100],
我想convertedList包含:["foo"],["bar"],["baz"]
到目前为止,我已经试过:

for (int i = 0; i <= originalList.Count; i++)
{
    convertedList.Add(actions.ToString());
}
Run Code Online (Sandbox Code Playgroud)

但没有运气.
哦,请记住,我是一个新手,对此的答案可能非常明显.
谢谢你的协助!
如果我只想转换前X个项目,我将如何继续进行?

Har*_*rry 6

 List<String> convertedList = originalList.Select(x => x.Key).ToList();
Run Code Online (Sandbox Code Playgroud)

要么:

  convertedList.AddRange(originalList.Select(x => x.Key));
Run Code Online (Sandbox Code Playgroud)

  • 如果你想追加而不是制作新的列表,可以使用`convertedList.AddRange(originalList.Select(kvp => kvp.Key));` (2认同)