简单复选框列表显示模型层次结构而不是值



我是一个新手,正在尝试建立一个网站,我在页面上有一个简单的CheckBoxList控件,目前显示一些"类别"数据。但是,我想减少要按数据中名为"类别类型"的字段分组的记录。

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;
}

我在数据库中有一个名为"类别"的表和一个名为YPGOOSDataContext的DataContext类.cs其中包括:

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

我想要做的只是放入一个分组子句,该子句在 CategoryType 上分组,以便我可以在复选框列表中显示该数据。

我可以输入一个后续的 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!!

请帮忙。

请尝试以下操作

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

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

最新更新