将两个单独的列表加入MVC中的单个列表

时间:2015-08-19 13:26:41

标签: c# asp.net-mvc c#-4.0 ienumerable

我有两个具有动态值的IEnumerable列表:

第一个列表是IEnumerable<string> SubHeadId,其数据类似于

 [0]->1
 [1]->4

第二个列表是IEnumerable<string> SubHeadId,其数据类似于

 [0]->100
 [1]->233

我想将这两个列表加入到具有

等数据的单个列表中
 [0]->1,100
 [1]->4,233

如何加入列表?请指南。

由于

1 个答案:

答案 0 :(得分:0)

实现此目的的正确方法是使用 Zip()扩展方法:

        var firstList = new List<string>() { "1", "4" };
        var secondList = new List<string>() { "100", "233" };

        var combined = firstList.Zip(secondList, (f, s) =>  f + ", " + s ).ToList();

重要的是要注意:

  

如果碰巧有两个元素数量不等的集合,则Zip方法只会继续存在两个元素都存在的最短索引。如果两个集合不均匀,则不会发生错误。