选择分组数据并将其绑定到listview / gridview最佳实践

时间:2013-04-10 10:13:17

标签: 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 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类中保存上表中的数据...

1 个答案:

答案 0 :(得分:0)

我建议使用ListView,有更多的分组支持。在SELECT查询中,您应该按&gt; itemCategory&#39;对行进行分组。 See this tutorial有关如何在代码中声明ListView的详细信息。