110,533
社区成员
发帖
与我相关
我的任务
分享
DataTable data1 = new DataTable();
data1.Columns.Add("姓名");
data1.Columns.Add("总成绩");
data1.Rows.Add(new object[] { "A", 300 });
data1.Rows.Add(new object[] { "B", 250 });
DataTable data2 = new DataTable();
data2.Columns.Add("姓名");
data2.Columns.Add("数学");
data2.Rows.Add(new object[] { "A", 70 });
data2.Rows.Add(new object[] { "B", 50 });
DataTable data3 = new DataTable();
data3.Columns.Add("姓名");
data3.Columns.Add("语文");
data3.Rows.Add(new object[] { "A", 90 });
data3.Rows.Add(new object[] { "B", 60 });
var merge = from main in data1.AsEnumerable()
join sx in data2.AsEnumerable() on main.Field<string>("姓名") equals sx.Field<string>("姓名")
join yw in data3.AsEnumerable() on main.Field<string>("姓名") equals yw.Field<string>("姓名")
select new
{
Name = main.Field<string>("姓名"),
Math = sx.Field<object>("数学"),
Chinese = yw.Field<object>("语文"),
Sum = main.Field<object>("总成绩"),
};
foreach (var m in merge)
Console.WriteLine(m);