я сортировка по нескольким критериям с использованием динамической сортировки, вот мой код:OrderBy не работает
public ActionResult WebGrid(int page = 1, int rowsPerPage = 10, string sortCol = "OrderID", string sortDir = "ASC", string sortSecCol = "OrderID", string sortSecDir = "ASC")
{
List<Orders> res;
using (var nwd = new NorthwindEntities())
{
var _res = nwd.Orders
.AsQueryable()
.OrderBy(sortCol + " " + sortDir, sortSecCol + " " + sortSecDir)
.Skip((page - 1) * rowsPerPage)
.Take(rowsPerPage)
.Select(o => new Orders
{
То, что я пытаюсь сделать здесь, я хочу столбец OrderID
быть вторичной сортировки, когда она не является первичный сорт, но это не сработало, когда я фактически выбрал другой столбец как основной вид.
Для слов, когда другой столбец выбирается в качестве основного сортировки в порядке убывания, OrderID
также должен быть в порядке убывания, я не уверен, что я пропустил в своем коде.
OrderBy
способ, который я использовал, исходит от here (MSDN).
Почему бы не использовать OrderBy() ThenBy() –
@ShannonHolsinger Поскольку нет 'ThenBy()' в динамической сортировке ... – Phantom
Ха-ха-ха, да, вы правы. Виноват. Двигаясь вместе ... –