C#使用LINQ对通用列表<>进行分组/排序

And*_*rew 3 c# linq

我期待分组和排序通用列表<>.我有一个表示文件的对象列表,每个对象都有一个FileName,FileType和FileDate属性.FileType定义为枚举.

我有一些工作代码,允许我按FileType将文件列表组合在一起.

var fileGroups = fileList.GroupBy(f=> f.FileType)

foreach (var group in fileGroups )
{
   foreach (var file in group)
   {
   }
}
Run Code Online (Sandbox Code Playgroud)

我希望能够做的是通过FileType枚举值对fileGroups进行排序,然后通过FileDate对fileGroups中的每个组进行排序.

R. *_*des 5

var sortedThing = fileGroups
                  .OrderBy(g => g.Key)             // (1) Order the groups
                  .Select(g => g.OrderBy(f => f.FileDate));   // (2) Order *each* group
Run Code Online (Sandbox Code Playgroud)

您需要排序的组(1)和内部排序的每个组(2);