我想要合并两个数据表。
我知道有很多方法2 for loops
和dataset merge
以及linq
。
但我发现他们所有人都需要准确知道每个数据表有多少列。
我的情况有点不同。
我从2个csv文件中获取数据并填充两个数据表。
因此,我不确切知道每个数据库有多少列。
我所知道的是每个表都有“NRIC”列,这是唯一的。
现在,我想合并它们。
我该如何做到这一点?
答案 0 :(得分:0)
通过迭代每个DataTables的Columns属性,你不能得到列名和/或列数吗?
以下链接可能有所帮助:
http://msdn.microsoft.com/en-us/library/system.data.datatable.columns.aspx
答案 1 :(得分:0)
You can try like the below one.Here location is common entity between two tables.
var results = t1.AsEnumerable().Join(t2.AsEnumerable(),
a => a.Field<String>("Location"),
b => b.Field<String>("Location"),
(a, b) =>
{
DataRow row = table.NewRow();
row.ItemArray = a.ItemArray.Concat(b.ItemArray).ToArray();
table.Rows.Add(row);
return row;
});