将List <t>转换为List <string> </string> </t>

时间:2014-07-22 13:13:38

标签: c# visual-studio-2010 list converter

我有一个班级和名单:

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

4 个答案:

答案 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();