我有2个数据表DataTable1和DataTable2,DataTable1有列作为A,B,C,D和DataTable2有列作为P,Q,R,SI想要添加数据表列并希望创建一个新的数据表作为A,B,C,d,P,Q,R,S如何组合2个数据表并使用Windows应用程序创建一个新的数据表?
有人请帮我该怎么做
我有2个数据表DataTable1和DataTable2,DataTable1有列作为A,B,C,D和DataTable2有列作为P,Q,R,SI想要添加数据表列并希望创建一个新的数据表作为A,B,C,d,P,Q,R,S如何组合2个数据表并使用Windows应用程序创建一个新的数据表?
有人请帮我该怎么做
这是不实际,和糟糕的设计。 简单地说,因为你不能像斯蒂格在他的评论中提到的那样把两种不同的东西放在一起而没有“共同性”。
想想把2个数据表放在一起,一个有5行,另一个为100. 除非有什么可以加入,否则我不会建议尝试这样做。 或者,如果您必须具备功能,那么我建议您迭代构建由Datable1和DataTable2组成的新数据表的数据表。
下面是样本加入:
from table1 in dt1.AsEnumerable()
join table2 in dt2.AsEnumerable() on table1["Location"] equals table2["Location"]
select new
{
Location = table1["Location"],
Visa_Q1 = (int)table1["Visa_Q1"],
Visa_Q2 = (int)table1["Visa_Q2"],
Visa_Q3 = (int)table2["Visa_Q3"],
Visa_Q4 = (int)table2["Visa_Q4"],
};
您可以合并2代表这样
var dtA = new DataTable();
dtA.Columns.Add("A");
dtA.Columns.Add("B");
dtA.Columns.Add("C");
var dtB = new DataTable();
dtB.Columns.Add("D");
dtB.Columns.Add("E");
dtB.Columns.Add("F");
dtA.Merge(dtB);
这是行不通的 - 因为这将其合并到两个单独的行。 – 2012-07-25 07:23:09
然后,您需要进行连接,并指定应该是什么值的jonining。 – Stig 2012-07-25 07:27:14