zoukankan      html  css  js  c++  java
  • datagrid在MVC中的运用09-实现排序

    本文体验datagrid的排序。

    □ 思路

    当点击datagrid的标题,视图传递给Controller的Form Data类似这样:page=1&rows=10&sort=CustomerID&order=asc。为了应对变化,把关于分页的封装成基类,其他关于排序或搜索的封装成继承该基类的子类。再把这些子类对象实例传递给服务层方法。

    datagrid参数

      相关Model

    展开

      服务层根据CustomerParam返回Customer集合,并返回一个输出总记录数

    展开

    在进行分类的时候,用到了针对 IEnumerable<Customer>扩展方法OrderByWithDirection,如下:

    using System.Linq;
     
    namespace DataGridInMVC2.Helpers
    {
        public static class SortExtension
        {
     
            public static IOrderedEnumerable<TSource> OrderByWithDirection<TSource, TKey>(
                this IEnumerable<TSource> source,
                System.Func<TSource, TKey> keySelector,
                bool descending)
            {
                return descending ? source.OrderByDescending(keySelector) : source.OrderBy(keySelector);
            }
        }
    }
     

      CustomerController

    展开

      Customer/Index 视图

    展开

    最终效果:
    sorting
  • 相关阅读:
    基于 Docker 安装 RocketMQ
    167. 两数之和 II
    阿里云的使用
    自动关机程序
    C语言学习关于数据类型的一些知识点(初学者)
    关于C语言学习的一些感想(初学者)
    c# 第14节 字符方法、转义字符、字符串的方法
    c# 第13节 迭代语句、while、do...while、for、foreach、goto
    c# 第12节 分支语句if、switch、三位运算符
    c# 第11节 运算符大全
  • 原文地址:https://www.cnblogs.com/darrenji/p/3576842.html
Copyright © 2011-2022 走看看