我有一组员工,每位员工都有一组职责。我想输出按姓名排序的员工列表,并按标题排序输出其职责。
因此,应该这样输出:
简·琼斯(Jane Jones)
职责:
责任A
责任B
迈克·史密斯
职责:
责任A
责任C
为了获得初始集合,我使用:
var employees = _context.Employees.OrderBy(e => e.Name);
但我似乎也无法弄清楚如何对“责任”子集合进行排序。
我正在使用MVC,并且我的View收到一个强类型的Employee集合,所以我不想构建并返回匿名类型。
最佳答案
您可以执行以下操作:
var employees = _context.Employees.OrderBy(e => e.Name);
employees.ToList().ForEach(e => e.Responsibilities = e.Responsibilities.OrderBy(r => r.Name));
关于linq - 如何使用LINQ订购集合及其子集合?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4455695/