C# - 将枚举值列表转换为字符串列表

时间:2018-06-01 00:07:01

标签: c# enums

我们说我有一个名为MyEnum的C#enum

public enum MyEnum
{
    Apple,
    Banana,
    Carrot,
    Donut
}

我有一个List<MyEnum>,例如:

List<MyEnum> myList = new List<MyEnum>();
myList.Add(MyEnum.Apple);
myList.Add(MyEnum.Carrot);

List<MyEnum>转换为List<string>最简单方式是什么?我是否必须创建一个新的List<string>然后遍历枚举列表,一次一个项目,将每个枚举转换为字符串并将其添加到我的新List<string>

2 个答案:

答案 0 :(得分:1)

由于您使用的是List,因此最简单的解决方案是使用ConvertAll方法获取包含List表示的新string。这是一个例子:

List<string> stringList = myList.ConvertAll(f => f.ToString());

还有其他方法可以实现这一目标,但这种方式可以完成工作并使用应该在您正在使用的任何.NET版本中的语法,因为它已经存在了很长时间。

答案 1 :(得分:0)

var list= (from action in (MyEnum[]) Enum.GetValues(typeof(MyEnum)) select action.ToString()).ToList();