C# 如何使用LINQ将类属性列表转换为字符串?

C# 如何使用LINQ将类属性列表转换为字符串?,c#,linq,C#,Linq,我有以下课程: public class Person { public string FirstName = string.Empty; public string LastName = string.Empty; } 以及该类别的列表: List<Person> listOfPeople = new List<Person>(); 一个简单的Select与字符串组合。Join将为您提供所需 string firstN

我有以下课程:

public class Person
    {
        public string FirstName = string.Empty;
        public string LastName = string.Empty;
    }
以及该类别的列表:

List<Person> listOfPeople = new List<Person>();

一个简单的
Select
字符串组合。Join
将为您提供所需

string firstNames = string.Join(", ", listOfPeople.Select(p=>p.FirstName));
根据您使用的.Net版本的不同,您可能还需要在
Select
之后添加一个
ToArray
,作为
字符串的重载。在.Net 4之前,没有添加使用
IEnumerable
的Join

请注意将公共字段转换为属性。

public class Person
{
    public string FirstName { get; set; }
    public string LastName { get; set; }

    public Person()
    {
        FirstName = string.Empty;
        LastName = string.Empty;
    }
}

您可以使用linq聚合函数来实现这一点

listOfPeople.Select(person => person.FirstName).Aggregate((i, j) => i + ", " + j);

谢谢你的快速回答。注意这相当于做。
listOfPeople.Select(person => person.FirstName).Aggregate((i, j) => i + ", " + j);