【发布时间】:2019-05-24 03:33:16
【问题描述】:
我有两个数据表table1 和table2。我想加入它们,从而在C# 中生成另一个数据表。这两个表的所有列都是未知的。
这是我尝试过的:
var joinTables = from t1 in table1.AsEnumerable()
join t2 in table2.AsEnumerable() on t1["S_InstanceID"] equals t2["P_ID"]
select new { T1 = t1, T2 = t2 };
注意:两个表中没有同名列
table1 总是只有一行,但table2 可以有任意数量的行。
所有列都不知道,只有来自table1 的S_InstanceID 和来自table2 的P_ID 是已知的,它们必须用于连接关系
目前在joinTables var,我只得到anonymous DataRow - 我怎样才能以DataTable 格式获得它?
【问题讨论】:
-
我需要同时添加它们 列合并用于DataTable的行合并
-
对于连接,我们需要为两个表都有一个公共列,那么为什么它需要主键
-
Datatable.Merge(DataTable, Boolean, MissingSchemaAction) 不起作用?
-
不知道@FalcoAlexander 但我需要添加它们 coulmwise
-
merge 将根据需要添加列,但表可能需要成为具有 FK 约束的
DataSet的一部分。