你将如何填充asp:GridView with List <list <string>&gt;在c#?</list <string>中

时间:2012-05-15 23:30:59

标签: c# asp.net gridview

我尝试在Google上搜索它,但我似乎不断碰到像这样的二维数组解决方案:http://forums.asp.net/t/1318173.aspx/1 我是否必须将List<List<string>>转换为二维数组列表?

1 个答案:

答案 0 :(得分:0)

如果你想要把所有东西都弄平(也就是说,每个列表都是一个接一个地显示),你可以这样做:

var orig = new List<List<string>>();
var flat = orig.SelectMany(inner => inner).ToList();

现在您可以使用flat绑定到GridView,它将包含一个列表,该列表是每个内部列表的扁平化。

但是,如果您希望每个外部列表元素都是一行,并且每个内部列表元素都是一个列,那么如果内部列表各自具有不同的大小(或者它们可以是),则您本身就会遇到问题。您需要在此方案中描述您的期望。


或者,如果您认为提供的链接可以为您提供答案,只需将列表转换为数组:

string[][] test = orig.Select(inner => inner.ToArray()).ToArray();