我有两个DataTables
DataTable1:
id name
-- ----
1 jhon
2 peter
DataTable2:
city country
--- -------
Sevilla Spain
Granada Spain
id是对应的。我需要连接这些数据表的列。
这是理想的结果:
id name city country
-- ---- ---- -------
1 Jhon Sevilla Spain
2 Peter Granada Spain
有什么想法吗?
谢谢!
答案 0 :(得分:0)
您需要将主键添加到table2,并在两个表之间添加关系。
答案 1 :(得分:0)
我假设您的DataTable名称是“DataTable1”和“DataTable2”,您可以使用以下代码将它们合并到DataTable1中;
Datatable1.Columns.Add("city", typeof(string));
Datatable1.Columns.Add("country", typeof(string));
for (int i = 0; i < Datatable1.Rows.Count; i++)
{
Datatable1.Rows[i][2] = DataTable2.Rows[i][0].toString();
Datatable1.Rows[i][3] = DataTable2.Rows[i][1].toString();
}
答案 2 :(得分:0)
使用下面的代码。
SqlDataSource1.ConnectionString = "--YOUR CONNECTION STRING--";
SqlDataSource1.SelectCommand = "select DataTable1.id,DataTable1.name,DataTable2.city,DataTable2.country from DataTable1,DataTable2
";
SqlDataSource1.DataBind();
祝你好运!
答案 3 :(得分:0)
您可以使用DataTable类的marge方法
答案 4 :(得分:0)
你可以利用linq
然后你可以在上面申请linq。
var results = from myRow in DataTable1.AsEnumerable()
var results2 = from myRow in DataTable2.AsEnumerable()
var result3= from row1 in results
join row2 in results2
select new
{
row1.id,
row1.name,
row2.city,
row2.country
};