Hello Friends我需要对GridView的元素进行分组,如下所示。 我需要根据其ID
来总结价格GridView中的数据
1 ------------- ------------- 1 100
2 ------------- ------------- 1 150
3 ------------- ------------- 1 120
4 ------------- ------------- 2 120
5 ------------- ------------- 2 160
6 ------------- ------------- 3 100
7 ------------- ------------- 3 200
我想将这些数据分组,如下所示,并将其保存在数据表中,以便我可以将其传递给我的数据库。
1 ------------ 370
2 ------------ 280
3 ------------ 300
我该怎么做? 提前致谢
答案 0 :(得分:2)
更改您的选择语句,如下所示
SELECT ID2, SUM(Price) FROM TableName GROUP BY ID2
如果您需要阅读gridview
,可以执行以下操作List<Record> records = new Record<Record>();
foreach (GridViewRow row in grid.Rows)
{
// below code need to be change with your grid controls and id names, and add validations for handle null values etc..
string id2 = ((Label)row.FindControl("ID2Label")).Text;
string Price = ((TextBox)row.FindControl("PricetextBox")).Text;
records.Add(new Record(){ ID2 = int.Parse(id2), Price = int.Parse(Price)});
}
var results = records.GroupBy(r=>r.ID2)
.Select(g=> new Record(){ ID2 = g.Key, Price = g.Sum(x=>x.Price)})
.ToList();
您可能需要如下的帮助类
public class Record
{
public int ID2 { get; set;}
public int Price {get; set;}
}