我看上去到处似乎都有相同的反应,但找不到解决我所遇到问题的方法。我正在尝试将对象列表中的项目连接成一个字符串。但是,我得到的是页面的名称和对象的名称,即实际的列表值。
我试过了:
string combinedLog = string.Join(",", logList)
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
string combinedLog = string.Join(",", logList.Select(c => c.ToString()).ToArray<string>());
Run Code Online (Sandbox Code Playgroud)
我得到的是PageName + Log,PageName + Log
这是对象:
private class Log
{
public DateTime LogTime { get; set; }
public string Result { get; set; }
public string ItemName { get; set; }
public Guid? ItemId { get; set; }
public string ErrorMessage { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
列表是:
List<Log> logList = new List<Log>();
Run Code Online (Sandbox Code Playgroud)
我正在尝试获取类似以下的字符串:“ 10/21/2019,失败,Acme,无法导入,10/21/2019,成功,ABC,没有错误”
您可以为此覆盖类中的ToString()方法Log
private class Log
{
public DateTime LogTime { get; set; }
public string Result { get; set; }
public string ItemName { get; set; }
public Guid? ItemId { get; set; }
public string ErrorMessage { get; set; }
public override string ToString()
{
return $"{LogTime}, {Result}, {ItemName}, {ErrorMessage}";
}
}
Run Code Online (Sandbox Code Playgroud)
而不是连接logList成一个字符串