C#Console writeline打印出泛型列表集合

时间:2015-11-27 12:48:38

标签: c# generic-collections

如果可能,我需要使用控制台写信打印出此通用列表的内容。请提前感谢您的帮助。 这个问题是关于这段特定的代码,我做了很多搜索,但没有运气。 代码:

using System;
using System.Collections.Generic;                   
public class Program
{
public class Proto
{
    public string name {get;set;}
    public Object[] data {get;set;} 
}
public  void Main()
{

    metodo().ForEach(item => Console.Write(item + ","));
}

public List<Proto> metodo()
{
    Proto[] myproto = new Proto[5];
    List<Proto> mylist = new List<Proto>();
    for(int i = 0;i<5;i++)
    {
        myproto[i] = new Proto {name = "blahblah",data = new Object[]{"dog","cat",2,3}};
        mylist.Add(myproto[i]);
    }
    int h = mylist.Count;
    Console.WriteLine("{0}\t",h);       
    return mylist;      
}

} ##标题##

1 个答案:

答案 0 :(得分:0)

覆盖ToString():

public class Proto
{
    public string name {get;set;}
    public Object[] data {get;set;} 
    public override string ToString()
    {
        var dataAsString = data.Aggregate(string.Empty, (current, t) => current + t.ToString());
        return name + dataAsString;  
    }
}

并使用它

metodo().ForEach(item => Console.Write(item.ToString() + ","));

编辑: 如果你想要它作为JSON。 从Nuget为您的项目安装Json.Net,然后

metodo().ForEach(item => Console.Write(JsonConvert.SerializeObject(item) + Environment.NewLine));