c# - 从对象列表中创建一个逗号分隔的字符串
问题描述
我有这些对象的列表
public class OsloProverModel
{
public string PersonalNumber { get; set; }
public string SchoolCode { get; set; }
public string Email { get; set; }
}
我正在尝试用这些记录制作一个逗号分隔的文件。所以例如像这样的东西
PN1,SC1,E1
PN2,SC2,E2
....
我正在尝试循环和连接。在Linq中有没有办法可以做到这一点?
解决方案
覆盖ToString()
public class OsloProverModel
{
public string PersonalNumber { get; set; }
public string SchoolCode { get; set; }
public string Email { get; set; }
public override string ToString()
{
return string.Join(",", new[] { PersonalNumber, SchoolCode, Email });
}
}
这样你就可以
OsloProverModel opmItem = new OsloProverModel()
{
PersonalNumber = "PN1",
SchoolCode = "SC1",
Email = "E1"
};
string result = opmItem.ToString(); //"PN1,SC1,E1"
https://dotnetfiddle.net/7l1G2S
或者在一个List<OsloProverModel>
和一个文件的情况下:
List<OsloProverModel> opvItems = GetValues();
System.IO.File.WriteAllLines(@"c:\myfile.csv", opvItems.Select(x => x.ToString()));
推荐阅读
- python - 如何将“args=(...)”添加到我自己函数的参数中?
- javascript - Node、Javascript 中的算法优化
- apache-zeppelin - Zeppelin - 如何授予用户权限
- batch-file - 使用 .bat 文件删除除两个文件夹之外的所有文件夹
- c# - C#中的图像缩小
- javascript - 按下按钮时选择的 div 标签的内容 - javascript
- python - 形状 (401,1) 和 (401,1) 未对齐:1 (dim 1) != 401 (dim 0)
- python - 取消/中断 cx_oracle 上的 query.execute()
- html - 将加载器与无序列表元素的中心对齐
- javascript - 如何仅从客户端向服务器发送 WebSocketSubject 消息?