var q=from t in Tb2s
group t by new
{
t.A,
t.B
}
into g
select new
{
g.Key.A,
g.Key.B,
g
};
foreach(var p in q)
{
string c=string.Empty;
foreach(var s in p.g)//合并C列
{
c+=s.C;
}
Console.WriteLine(p.A+"\t"+p.B+"\t"+c);//合并后的行数据,再用DataTable处理。
}
/*
a b cd
c d ab
*/
group t by new
{
t.A,
t.B
}
into g
select new
{
g.Key.A,
g.Key.B,
g
};
foreach(var p in q)
{
string c=string.Empty;
foreach(var s in p.g)//合并C列
{
c+=s.C;
}
Console.WriteLine(p.A+"\t"+p.B+"\t"+c);//合并后的行数据,再用DataTable处理。
}
/*
a b cd
c d ab
*/
{
c+=s.C;
}
这一部能一起放在linq里面做吗?
var q=from t in Tb2s
group t by new
{
t.A,
t.B
}
into g
select new
{
g.Key.A,
g.Key.B,
g
};
这样子的我写出来了,就是最后这个select new
{
g.Key.A,
g.Key.B,
g
};的第三个g这里写不出
{
c+=s.C;
}这一部能一起放在linq里面做吗?
-------
MS不行,C列是字符串,如果是数字倒可以用sum等函数来聚合
不是要根据分组合并行数据??