zoukankan      html  css  js  c++  java
  • 通用分页请求返回类

    using System.Runtime.Serialization;
    
        /// <summary>
        /// 通用分页请求类
        /// </summary>
        [DataContract]
        public class PagedListModelReq : Request
        {
            /// <summary>
            /// <strong>Initializes a new instance of the <see cref="</strong>OperationLogReq<strong>" /> class</strong>
            /// OperationLogReq
            /// </summary>
            public PagedListModelReq()
            {
                this.PageIndex = 1;
                this.PageSize = 15;
            }
    
            /// <summary>
            /// 索引开始
            /// </summary>
            [DataMember]
            public int StartIndex
            {
                get
                {
                    int index = 0;
                    if (this.PageSize > 0 && this.PageIndex > 0)
                    {
                        index = ((this.PageIndex - 1) * this.PageSize) + 1;
                    }
    
                    return index;
                }
            }
    
            /// <summary>
            /// 索引结束
            /// </summary>
            [DataMember]
            public int EndIndex
            {
                get
                {
                    int index = 1;
                    if (this.PageSize > 0 && this.PageIndex > 0)
                    {
                        index = this.PageIndex * this.PageSize;
                    }
    
                    return index;
                }
            }
    
            /// <summary>
            /// 分页大小
            /// </summary>
            [DataMember]
            public int PageSize { get; set; }
    
            /// <summary>
            /// 第几页数
            /// </summary>
            [DataMember]
            public int PageIndex { get; set; }
    
            /// <summary>
            /// Called when [deserialized].
            /// </summary>
            /// <param name="context">StreamingContext</param>
            [OnDeserialized]
            private void OnDeserialized(StreamingContext context)
            {
                if (this.PageIndex <= 0)
                {
                    this.PageIndex = 1;
                }
    
                if (this.PageSize <= 0)
                {
                    this.PageSize = 15;
                }
            }
        }
    
        /// <summary>
        /// 通用分页请求类
        /// </summary>
        /// <typeparam name="T">Poco类型</typeparam>
        [DataContract]
        public class PagedListModelReq<T> : Request
        {
            /// <summary>
            /// <strong>Initializes a new instance of the <see cref="</strong>OperationLogReq<strong>" /> class</strong>
            /// OperationLogReq
            /// </summary>
            public PagedListModelReq()
            {
                this.PageIndex = 1;
                this.PageSize = 15;
            }
    
            /// <summary>
            /// 索引开始
            /// </summary>
            [DataMember]
            public int StartIndex
            {
                get
                {
                    int index = 0;
                    if (this.PageSize > 0 && this.PageIndex > 0)
                    {
                        index = ((this.PageIndex - 1) * this.PageSize) + 1;
                    }
    
                    return index;
                }
            }
    
            /// <summary>
            /// 索引结束
            /// </summary>
            [DataMember]
            public int EndIndex
            {
                get
                {
                    int index = 1;
                    if (this.PageSize > 0 && this.PageIndex > 0)
                    {
                        index = this.PageIndex * this.PageSize;
                    }
    
                    return index;
                }
            }
    
            /// <summary>
            /// 分页大小
            /// </summary>
            [DataMember]
            public int PageSize { get; set; }
    
            /// <summary>
            /// 第几页数
            /// </summary>
            [DataMember]
            public int PageIndex { get; set; }
    
            /// <summary>
            /// Called when [deserialized].
            /// </summary>
            /// <param name="context">序列化的上下文</param>
            [OnDeserialized]
            private void OnDeserialized(StreamingContext context)
            {
                if (this.PageIndex <= 0)
                {
                    this.PageIndex = 1;
                }
    
                if (this.PageSize <= 0)
                {
                    this.PageSize = 15;
                }
            }
        }
        [Serializable]
        [DataContract]
        public class PagedResult<T> : IPagedResult<T>
        {
            protected PagedResult();
            public PagedResult(IList<T> source, int pageIndex, int pageSize);
            public PagedResult(IQueryable<T> source, int pageIndex, int pageSize);
            public PagedResult(IEnumerable<T> source, int pageIndex, int pageSize, int totalCount);
    
            [DataMember]
            public bool HasNextPage { get; }
            [DataMember]
            public bool HasPreviousPage { get; }
            [DataMember]
            public IEnumerable<T> Items { get; }
            [DataMember]
            public int PageIndex { get; }
            [DataMember]
            public int PageSize { get; }
            [DataMember]
            public int TotalCount { get; }
            [DataMember]
            public int TotalPages { get; }
        }
    /// <summary>
        /// 通用分页返回类
        /// </summary>
        /// <typeparam name="T">Model对应的类型</typeparam>
        [DataContract]
        public class PagedListModelResp<T> : Response
        {
            /// <summary>
            /// 返回分页数据
            /// </summary>
            [DataMember]
            public PagedResult<T> List { get; set; }
        }
  • 相关阅读:
    vue---echarts图表
    路由嵌套
    VoIP语音通话研究【进阶篇(四):freeswitch+webrtc+sip.js的通话】
    VoIP语音通话研究【进阶篇(三):opensips安装】
    如何在北京退休?
    后端分析/前端分析/边缘分析
    使用curl批量下载图片
    pytorch固定随机种子复现实验结果
    分享一个作为面试官的面试思路
    两个流程链路问题的排查和总结
  • 原文地址:https://www.cnblogs.com/zhshlimi/p/9072918.html
Copyright © 2011-2022 走看看