Vb.net 如何根据表中的ID将数据表中的列附加到另一个数据表中?
我正在基于一组查询构建一个表,这些查询将确定表中的列。这意味着列名将是动态的。每个查询都有一个id,我们使用它将正确的数据与正确的用户匹配 以下是数据的外观: 基表 子表 我使用的代码是Vb.net 如何根据表中的ID将数据表中的列附加到另一个数据表中?,vb.net,linq,datatable,Vb.net,Linq,Datatable,我正在基于一组查询构建一个表,这些查询将确定表中的列。这意味着列名将是动态的。每个查询都有一个id,我们使用它将正确的数据与正确的用户匹配 以下是数据的外观: 基表 子表 我使用的代码是 Dim tablesJoined = From t1 In dt1.AsEnumerable() Join t2 In flatTable.AsEnumerable() On t1.Field(Of String)("SHM_ID"
Dim tablesJoined = From t1 In dt1.AsEnumerable()
Join t2 In flatTable.AsEnumerable()
On t1.Field(Of String)("SHM_ID")
Equals t2.Field(Of String)("SHM_ID")
但是,我想选择dt1的所有值,并将第二个表中的数据合并到其中。对于进一步的上下文,我将多次这样做,所以我不能只使用静态对象
有没有办法把这两张桌子优雅地放在一起
它看起来像这样:
也许您可以使用“选择新”和。。。()输出是什么样子的?您能否构建所需的表结构并将其放入您的问题中?
Datatable.Merge
?@N0Alias如果我提前知道所有列,则选择“新建”。但是,除非我弄错了,否则您正在使用该方法构建一个对象,您需要知道该对象的参数。有没有办法在查询中根据第一个数据表中的行构建对象?我不清楚您的要求,但您可以在这篇非LINQ MS支持文章中找到一些想法: