6、添加Common类

一、新建Common文件夹,将公共类放入到此文件夹中

1、新建GridPager类

    public class GridPager
    {
        public int rows { get; set; }//每页行数
        public int page { get; set; }//当前页是第几页
        public string order { get; set; }//排序方式
        public string sort { get; set; }//排序列
        public int totalRows { get; set; }//总行数

        public int totalPages //总页数
        {
            get
            {
                return (int)Math.Ceiling((float)totalRows / (float)rows);
            }
        }
    }

2、新建SortingAndPaging类

     添加引入:using System.Linq.Expressions; 

                      using System.Reflection;

    public class SortingAndPaging
    {
        /// <summary>
        /// 排序
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="source"></param>
        /// <param name="sortExpression"></param>
        /// <param name="sortDirection"></param>
        /// <returns></returns>
        public static IQueryable<T> DataSorting<T>(IQueryable<T> source, string sortExpression, string sortDirection)
        {
            string sortingDir = string.Empty;
            if (sortDirection.ToUpper().Trim() == "ASC")
                sortingDir = "OrderBy";
            else if (sortDirection.ToUpper().Trim() == "DESC")
                sortingDir = "OrderByDescending";
            ParameterExpression param = Expression.Parameter(typeof(T), sortExpression);
            PropertyInfo pi = typeof(T).GetProperty(sortExpression);
            Type[] types = new Type[2];
            types[0] = typeof(T);
            types[1] = pi.PropertyType;
            Expression expr = Expression.Call(typeof(Queryable), sortingDir, types, source.Expression, Expression.Lambda(Expression.Property(param, sortExpression), param));
            IQueryable<T> query = source.AsQueryable().Provider.CreateQuery<T>(expr);
            return query;
        }
        /// <summary>
        /// 分页
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="source"></param>
        /// <param name="pageNumber"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        public static IQueryable<T> DataPaging<T>(IQueryable<T> source, int pageNumber, int pageSize)
        {
            if (pageNumber <= 1)
            {
                return source.Take(pageSize);
            }
            else
            {
                return source.Skip((pageNumber - 1) * pageSize).Take(pageSize);
            }
        }
        /// <summary>
        /// 排序并分页 
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="source"></param>
        /// <param name="sortExpression"></param>
        /// <param name="sortDirection"></param>
        /// <param name="pageNumber"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        public static IQueryable<T> SortingPaging<T>(IQueryable<T> source, string sortExpression, string sortDirection, int pageNumber, int pageSize)
        {
            IQueryable<T> query = DataSorting<T>(source, sortExpression, sortDirection);
            return DataPaging(query, pageNumber, pageSize);
        }
    }

3、新建Suggestion类(静态类)

    public static class Suggestion
    {
        public static string PlaseChooseToOperatingRecords { get { return "请选择要操作的记录"; } }
        public static string AreYouLogOff { get { return "您确定要注销系统吗?"; } }
        public static string Cancel { get { return "取消"; } }
        public static string CanNotOperationHasTheAudit { get { return "不能操作已经审核的记录"; } }
        public static string Check { get { return "审核"; } }
        public static string CheckFail { get { return "审核失败"; } }
        public static string CheckSucceed { get { return "审核成功"; } }
        public static string ClearLossJobs { get { return "清理离线任务"; } }
        public static string Close { get { return "关闭"; } }
        public static string CloseAll { get { return "关闭全部"; } }
        public static string CloseLeft { get { return "关闭左侧标签"; } }
        public static string CloseOther { get { return "除此之外全部关闭"; } }
        public static string CloseRight { get { return "关闭右侧标签"; } }
        public static string Create { get { return "创建"; } }
        public static string Delete { get { return "删除"; } }
        public static string DeleteFail { get { return "删除失败"; } }
        public static string DeleteSucceed { get { return "删除成功"; } }
        public static string Details { get { return "详细"; } }
        public static string Disable { get { return "不可用"; } }
        public static string Edit { get { return "编辑"; } }
        public static string EditFail { get { return "修改失败"; } }
        public static string EditSucceed { get { return "修改成功"; } }
        public static string Export { get { return "导出"; } }
        public static string InsertFail { get { return "创建失败"; } }
        public static string InsertSucceed { get { return "创建成功"; } }
        public static string Loading { get { return "加载中"; } }
        public static string LoginSucceed { get { return "登录成功,您可以继续操作!"; } }
        public static string LogOff { get { return "安全退出"; } }
        public static string NoAnyChanges { get { return "没有作任何修改"; } }
        public static string Operate { get { return "操作"; } }
        public static string PrimaryRepeat { get { return "主键重复"; } }
        public static string Query { get { return "查询"; } }
        public static string Reload { get { return "刷新"; } }
        public static string Return { get { return "返回"; } }
        public static string Save { get { return "保存"; } }
        public static string Select { get { return "选择"; } }
        public static string SetFail { get { return "设置失败"; } }
        public static string SetSucceed { get { return "设置成功"; } }
        public static string SwitchingSkin { get { return "切换主题,系统将重新加载?"; } }
        public static string Tip { get { return "提示"; } }
        public static string UnCheck { get { return "反审核"; } }
        public static string UnCheckFail { get { return "反审核失败"; } }
        public static string UnCheckSucceed { get { return "反审核成功"; } }
        public static string UnSelect { get { return "反选"; } }
        public static string Update { get { return "更新"; } }
        public static string UpdateFail { get { return "更新失败"; } }
        public static string UpdateSucceed { get { return "更新成功"; } }
        public static string UpLoad { get { return "上传"; } }
        public static string UserTimeOver { get { return "用户登录超时,请重新登录"; } }
        public static string Welcome { get { return "您好,欢迎您"; } }
        public static string YouCanOnlyOperateARecord { get { return "一次只能操作一条记录"; } }
        public static string YouWantToDeleteTheSelectedRecords { get { return "您确定要删除所选记录吗?"; } }
    }

 4、新建ValidationError类

    public class ValidationError
    {
        public ValidationError() { }
        public string ErrorMessage { get; set; }
    }

    public class ValidationErrors : List<ValidationError>
    {
        /// <summary>
        /// 添加错误
        /// </summary>
        /// <param name="errorMessage">信息描述</param>
        public void Add(string errorMessage)
        {
            base.Add(new ValidationError { ErrorMessage = errorMessage });
        }
        /// <summary>
        /// 获取错误集合
        /// </summary>
        public string Error
        {
            get
            {
                string error = "";
                this.All(a =>
                {
                    error += a.ErrorMessage;
                    return true;
                });
                return error;
            }
        }
    }

猜你喜欢

转载自www.cnblogs.com/shiliumu/p/9032159.html