如何在LINQ中按多个字段排序?

maz*_*ztt 3 linq sql-order-by

我怎样才能进行多种排序

 return (from p in _db.Pages where p.int_PostStatusId == 2 select p).OrderByDescending(m => m.int_SortOrder);
Run Code Online (Sandbox Code Playgroud)

我想通过int_PageId做订单吗?首先是int_SortOrder然后是int_PageId

Mar*_*ers 13

二者必选其一ThenByThenByDescending命令的结果OrderByOrderByDescending:

return (...)
    .OrderByDescending(m => m.int_SortOrder)
    .ThenBy(m => m.int_PageId);
Run Code Online (Sandbox Code Playgroud)

或者使用查询语法:

orderby p.int_SortOrder descending, p.int_PageId
Run Code Online (Sandbox Code Playgroud)