简单的CheckBoxList显示模型层次结构而不是值

时间:2014-02-10 03:25:26

标签: c# asp.net entity-framework

我是一个新手,并试图建立一个网站,我在页面上有一个简单的CheckBoxList控件,目前显示一些'类别'数据。但是,我希望减少要通过名为“CategoryType”的数据中的字段进行分组的记录。

aspx代码:

<asp:CheckBoxList ID="CheckBoxList1" runat="server" SelectMethod="GetCategories"> /asp:CheckBoxList>

aspx.cs代码:

public IQueryable<Category> GetCategories()
{
   var _db = new YPGOOS2.Models.YPGOOSDataContext();
   IQueryable<Category> query = _db.Categories;
   return query;
}

我在数据库中有一个名为“Categories”的表和一个名为YPGOOSDataContext.cs的DataContext类,其中包括:

public DbSet<Category> Categories { get; set; }

我想要做的就是放入一个groupby子句,该子句在CategoryType上分组,这样我就可以在CheckBoxList中显示该数据。

我可以输入后续的OrderBy语句,正确地对数据进行排序......

query = query.OrderBy(ob=>ob.CategoryType); //this sorts by CategoryType correctly

...但是,当我尝试以下操作时,它不起作用......

query = query.GroupBy(gb => gb.CategoryType); //can't get the GroupBy to work!!

请帮忙。

1 个答案:

答案 0 :(得分:1)

尝试以下

query = query.GroupBy(gb => gb.CategoryType).Select(x => x.FirstOrDefault());

GroupBy不直接返回IQueryable<Category>,您需要根据自己的要求构建