【问题标题】:Join two lists without having any matching columns in LINQ加入两个列表,而 LINQ 中没有任何匹配的列
【发布时间】:2016-08-05 04:56:52
【问题描述】:

我有两个来自 db 的单独列表:

List<Id> lstId 的值为 0,1,2,…

List<name> lstnaname 的值为 “a”,”b”,c”

我想合并这两个没有任何共同列的列表。 我的预期输出是

List<output> out 
Out[0] = {0,”a”}
Out[1] = {1,”b”}

我尝试在 linq 中使用 concat,但它只是将 listA 添加到 listB。

Join 子句不起作用,因为没有公共字段。 我将如何实现它?

【问题讨论】:

  • 为什么你会期待{0, "a"}而不是{1, "a"}?你只是依靠订购吗?
  • 是的,它只是一对一的排序 listA 的第 0 个元素到 listB 的第 0 个元素等等......
  • 请查看此链接以获得帮助。 stackoverflow.com/questions/10297124/…

标签: c# .net linq c#-4.0


【解决方案1】:

使用Zip:

var result = lstId.Zip(lstName, (id, name) => new { id, name });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-12
    • 2014-02-15
    • 1970-01-01
    相关资源
    最近更新 更多