我有一个班级和名单:
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>();
我想用每个元素conLineOne和conLineTwo创建parametersList。
例如:
PRESORTED:
conLineOne: apple conLineTwo: banana
conLineOne: pear conLineTwo: strawberry
然后我想要parametersList:
apple
banana
pear
strawberry
答案 0 :(得分:4)
使用SelectMany()
将每个源实体投影到多个目标实体:
List<string> foo = input.SelectMany(f => new[]
{
f.conLineOne,
f.conLineTwo
})
.ToList();
这将列出conLineOne
后跟每个conLineTwo
元素的input
。
答案 1 :(得分:0)
你可以使用Select。
来做到这一点List<string> parametersList = preSorted
.OrderBy(x => x.conLineOne)
.ThenBy(x => x.conLineTwo)
.Select(x => x.conLineTwo);
答案 2 :(得分:0)
没有Linq也很容易做到:
List<string> result = new List<string>();
foreach (var item in preSorted)
{
result.Add(item.conLineOne);
result.Add(item.conLineTwo);
}
答案 3 :(得分:-5)
请尝试以下,
var string List = List.Of Type();