我有一个Product列表(如下面)对象,我想从此对象转换csv字符串
[DataContract]
public class Product
{
[DataMember]
[XmlElement("title", Namespace = "")]
public string Name { get; set; }
[DataMember]
[XmlElement("link", Namespace = "")]
public string ProductUrl { get; set; }
}
以下方法不能给我正确的输出
[WebGet(UriTemplate = "csv")]
public string GetCollectionAsCsv()
{
if (WebOperationContext.Current != null)
{
WebOperationContext.Current.OutgoingResponse.ContentType = "text/csv";
WebOperationContext.Current.OutgoingResponse.Headers["Content-Disposition"] = "attachment; filename=\"products.csv\"";
}
List<Product> resultList = _boutiqueManager.GetProducts();
var sb = new StringBuilder();
foreach (Product obj in resultList)
{
sb.Append(String.Join(",", obj));
}
return sb.ToString();
}
结果
我应该在这里获得正确的csv结果
答案 0 :(得分:1)
检查此行:sb.Append(String.Join(",", obj));
你在这里追加对象的类型,而不是一些值。
尝试sb.Append(String.Join(",", obj.Name));
之类的内容
例如,附加名称列表