C # - конвертировать список значений перечисления в список строк - PullRequest
0 голосов
/ 01 июня 2018

Допустим, у меня есть C # enum с именем MyEnum:

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 голосов
/ 26 декабря 2018
var list= (from action in (MyEnum[]) Enum.GetValues(typeof(MyEnum)) select action.ToString()).ToList();
0 голосов
/ 01 июня 2018

Поскольку вы используете List, самым простым решением будет использование метода ConvertAll для получения нового List, содержащего string представления.Вот пример:

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

Есть и другие способы сделать это, но этот способ выполнит работу и использует синтаксис, который должен быть в любой версии .NET, которую вы используете, потому что она существуетдолгое время.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...