У меня есть класс и список:
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
.
Вы можете сделать это с помощью Select.
List<string> parametersList = preSorted
.OrderBy(x => x.conLineOne)
.ThenBy(x => x.conLineTwo)
.Select(x => x.conLineTwo);
Это тоже легко сделать без Linq:
List<string> result = new List<string>();
foreach (var item in preSorted)
{
result.Add(item.conLineOne);
result.Add(item.conLineTwo);
}
Pls попробуйте следовать,
var stringList = myList.OfType();