首页 > Web开发 > 详细

datagrid在MVC中的运用09-实现排序

时间:2014-03-03 14:01:47      阅读:502      评论:0      收藏:0      [点我收藏+]

本文体验datagrid的排序。

□ 思路

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

bubuko.com,布布扣

  相关Model

bubuko.com,布布扣展开

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

bubuko.com,布布扣展开

在进行分类的时候,用到了针对 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

bubuko.com,布布扣展开

 

  Customer/Index 视图

bubuko.com,布布扣展开

最终效果:
bubuko.com,布布扣

datagrid在MVC中的运用09-实现排序,布布扣,bubuko.com

datagrid在MVC中的运用09-实现排序

原文:http://www.cnblogs.com/darrenji/p/3576842.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!