如何将对象列表转换为字符串列表

我有一个Person对象列表

class Person
{
    string FirstName{get;set;}
    int Age {get;set;}
}

现在在这个Person对象列表中

Person1有FirstName =“Alan”,Age = 20

人2有FirstName =“Josephine”,年龄= 21

我需要得到一个新的列表,其中每个列表项都有与年龄连接的名字

我需要的清单:

艾伦:20

约瑟芬:21

...等等

我到目前为止...

var PersonConcatenatedList= from p in PersonList
                            select new {firstName= p.FirstName, Age=p.Age};

错误...但现在如何输出所需的列表格式? :(

任何帮助将不胜感激。 谢谢


使用string.Join

var PersonConcatenatedList = PersonList
                            .Select(x => string.Join(":", x.FirstName, x.Age));

既然你需要一个字符串列表,你不应该创建一个有意义的类型。简单的字符串concatanation也可以工作:

PersonList.Select(x => x.FirstName + ":" + x.Age));

如果你想为一个字符串输出,然后使用string.Join通过Environment.NewLine和concatanate与新行字符的结果:

var output = string.Join(Environment.NewLine, PersonConcatenatedList);

String.Join()是一种方法。 但对于良好的编程,我建议实施.ToString()方法。

class Person
{
    string FirstName { get; set; }
    int Age { get; set; }

    public override string ToString()
    {
        return this.FirstName + ":" + this.Age;
    }
}

然后只需使用以下内容:

var result = personList.Select(person => person.ToString());
链接地址: http://www.djcxy.com/p/51377.html

上一篇: How to Convert a list of objects to a string list

下一篇: Load XML into dropdown list C#