C# 选择分组数据并将其绑定到listview/gridview最佳实践
如果您对数据进行分组,那么最好的方法是什么?例如:我已经简化了本例中的所有内容 项目类别表:C# 选择分组数据并将其绑定到listview/gridview最佳实践,c#,asp.net,sql-server-2008,tsql,C#,Asp.net,Sql Server 2008,Tsql,如果您对数据进行分组,那么最好的方法是什么?例如:我已经简化了本例中的所有内容 项目类别表: itemId itemCategoryId itemName 1 1 item1 2 1 item2 3 2 item3 4 1 item4 5 3 item5 和类别表 itemCategoryId itemCat
itemId itemCategoryId itemName
1 1 item1
2 1 item2
3 2 item3
4 1 item4
5 3 item5
和类别表
itemCategoryId itemCategory
1 category1
2 category2
3 category3
所以,如果我选择所有项目,我将得到和第一个表相同的结果,可能是itemCategory
但是,当我绑定Listview/Gridview或其他所有内容时,我希望在类别中对项目进行分组,以便如果我有与上面相同的数据,我在Listview/Gridview中的结果。。。应该是这样的:
category1:
1 item1
2 item2
4 item4
category2:
3 item3
category3:
5 item5
你认为做这件事最好的方法是什么。我正在使用sql server 2008和visual studio 2010 ASP.NET c。谢谢你的帮助
我不希望数据库中的结果适用于此类:
public class Item
{
public int itemId { get; set; }
public string itemName { get; set; }
public Item() { }
public Item(int itemId, string itemName)
{
this.itemId = itemId;
this.itemName = itemName;
}
}
public class GroupOfitems
{
public string itemCategory{ get; set; }
public List<Item> itemList { get; private set; }
public GroupOfitems()
{
itemList = new List<Item>();
}
public GroupOfitems(string itemCategory, List<Item> itemList)
{
this.itemCategory= itemCategory;
this.itemList = itemList;
}
}
因此,我可以将上面表格中的数据保存在GroupOfItems类中…我建议使用ListView,因为它更支持分组。在SELECT查询中,应按“itemCategory”对行进行分组。有关如何在代码中声明ListView的详细信息。我无法按itemCategory分组,因为同一类别包含更多的项目。这个listview分组对我来说不是正确的答案。使用组模板,您可以使listview中的项目看起来像组,但每个项目都是一个组。我希望根据结果数据在同一组中有更多项。所以这不是我想要的答案,您需要编写一些自定义代码,但是ListView绝对适合您想要实现的目标。这个话题在这个网站和其他博客上得到了各种各样的报道,