我有一个Person对象列表,这个类有很多属性,我需要将它们全部以逗号分隔的形式列出来,这样我之后可以用于Csv文件。我通过foreach循环和手动添加每个属性,并用逗号分隔来实现这个目标。
const string commaSeparator = ",";
foreach (var item in individualsInformation)
{
csv.AppendLine(item.ReferenceNumber + commaSeparator + item.FirstName + commaSeparator +
item.Surname + commaSeparator + item.MiddleName + commaSeparator +
item.Address1 + commaSeparator + item.Address2 + commaSeparator +
item.Address3 + commaSeparator + item.Address4 + commaSeparator +
item.City + commaSeparator + item.PostalCode + commaSeparator +
item.Country + commaSeparator + item.DateOfBirth.ToString() + commaSeparator +
item.ID + commaSeparator + item.Gender + commaSeparator +
item.Component + commaSeparator + item.NationalID + commaSeparator +
item.SubSystemID + commaSeparator + item.System);
}
然后我意识到有更高效的方法,可以使用string.Join
当然,这不起作用:
string joined = string.Join(",", listOfPersons);
如果我按照这样选择属性:
string joined = string.Join(",", listOfPersons(x => x.Id);
当然,我只得到逗号分隔的属性列表。
有没有更有效的方法来获取每个用逗号分隔的属性?