LINQ动态分组

我有一个记录的类列表,因此用户可以选择按属性名称将行动态分组。例如MenuText,RoleName或ActionName。然后,我必须执行分组,因此我需要一个通用的方法来通过传递列名来处理分组。


范例:


public class Menu

{

  public string MenuText {get;set;}

  public string RoleName {get;set;}

  public string ActionName {get;set;}

}


public class Menus 

{

 var list = new List<Menu>();

 list.Add( new Menu {MenuText="abc",RoleName ="Admin", ActionName="xyz"};

 list.Add( new Menu {MenuText="abc",RoleName ="Admin", ActionName="xyz"};

 list.Add( new Menu {MenuText="abc1",RoleName ="Admin1", ActionName="xyz1"};

 list.Add( new Menu {MenuText="abc1",RoleName ="Admin1", ActionName="xyz1"};


  /// columnName :- Name of the Menu class ( MenuText  or RoleName  or ActionName)


  public IEnumerable<IGrouping<string,IEnumerable<Menu>>> GroupMenu(string columnName)

  {

          // Here I want to get group the list of menu by the columnName 

  }

}


qq_笑_17
浏览 793回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP