Конвертировать список <t> к списку <string>

Вопрос:

У меня есть класс и список:

public class sorting
{
public string conLineOne { get; set; }
public string conLineTwo { get; set; }
}

public static List<sorting> preSorted = new List<sorting>();

и в методе, который у меня есть

List<string> parametersList = new List<string>();

и я хочу создать параметрыList с каждым элементом conLineOne и conLineTwo.

Например:

предварительно отсортированный:

conLineOne: apple conLineTwo: banana
conLineOne: pear  conLineTwo: strawberry

Тогда мне нужны параметрыList:

apple

banana

pear

strawberry

Лучший ответ:

Используйте SelectMany() для проектирования каждого исходного объекта для нескольких целевых объектов:

List<string> foo = input.SelectMany(f => new[] 
    { 
         f.conLineOne, 
         f.conLineTwo 
    })
    .ToList();

Это будет список conLineOne за которым следует conLineTwo каждого элемента input.

Ответ №1

Вы можете сделать это с помощью Select.

List<string> parametersList = preSorted
.OrderBy(x => x.conLineOne)
.ThenBy(x => x.conLineTwo)
.Select(x => x.conLineTwo);

Ответ №2

Это тоже легко сделать без Linq:

List<string> result = new List<string>();

foreach (var item in preSorted)
{
result.Add(item.conLineOne);
result.Add(item.conLineTwo);
}

Ответ №3

Pls попробуйте следовать,

var stringList = myList.OfType();

Оцените статью
TechArks.Ru
Добавить комментарий