使用<strings>没有要从中索引的 id 的列表在 Linq 中联接



大家好,提前感谢。

我有两个列表:

    String[] a = new String []{"A","B", "C"}; 
    String[] num = new String []{"1","2" ,"3"};

和linq查询:

    var gridview = (from A in a
                    from num in Num
                    select new
                    {
                        TName = A,
                        RName = Num
                    }).Distinct().ToList();
    GridViewList.DataSource = gridview;
    GridViewList.DataBind();

生成如下输出:

1 A
2 A
3 A
1 B
2 B
3 B
1 C
2 C
3 C

我想要的输出是:

1 A
2 B
3 C

所以我认为我可以使用连接,但如果我没有一个id来引用呢?

改成:

   var gridview = a.Zip(num, (t, r) => new 
   {
       TName = t,
       RName = r
   }).ToList();

这里要做的是压缩列表

var gridview = a.Zip(num, (A,n)=>new{TName = A,RName = n}).ToList();

见http://msdn.microsoft.com/en-us/library/dd267698 (v = vs.110) . aspx

您可以使用Zip:

var result = a.Zip(num, (s, n) => n.ToString() + " " + s);

您需要使用Zip而不是Join,假设需求是合并两个长度相等的列表

您可以使用以下方法:

var res = a.Select((x,i) => new {TName = x, RName = num[i]}).ToList();

相关内容

  • 没有找到相关文章

最新更新