zoukankan      html  css  js  c++  java
  • 项目中的通用查询参数类,它体现了项目架构的大局观

         /// <summary>
        /// 自定义谓词
        /// </summary>
        public class VPredication : IEnumerable<KeyValuePair<string, object>>
        {
            Dictionary<string, object> dicv = null;
            SpacePredication spacePredication = null;
            /// <summary>
            /// 区间谓词
            /// </summary>
            public SpacePredication SpacePredication { get { return this.spacePredication; } }
     
            /// <summary>
            /// 自定义区间 构造函数
            /// </summary>
            public VPredication()
            {
                spacePredication = new SpacePredication();
                dicv = new Dictionary<string, object>();
            }
     
            /// <summary>
            /// 验证键是否存在值
            /// </summary>
            /// <param name="index">键</param>
            /// <returns>bool</returns>
            public bool ContainsKey(string index)
            {
                return this.dicv.ContainsKey(index);
            }
     
            /// <summary>
            /// 索引器
            /// </summary>
            /// <param name="index">索引值</param>
            /// <returns>值</returns>
            public object this[string index]
            {
                get
                {
                    if (dicv.ContainsKey(index))
                        return dicv[index];
                    else
                        return null;
                }
            }
     
     
            /// <summary>
            /// 增加新项
            /// </summary>
            /// <param name="key">列枚举[只能接受非FLAG得单个枚举]</param>
            /// <param name="extremumPair"></param>
            public void AddItem(string key, object value)
            {
                this.dicv.Add(key, value);
            }
            /// <summary>
            /// 移除制定 列枚举 的项
            /// </summary>
            /// <param name="key">列枚举[只能接受非FLAG得单个枚举]</param>
            public void RemoveItem(string key)
            {
                this.dicv.Remove(key);
            }
     
            #region IEnumerable<KeyValuePair<string,object>> 成员
     
            public IEnumerator<KeyValuePair<string, object>> GetEnumerator()
            {
                return this.dicv.GetEnumerator();
            }
     
            #endregion
     
            #region IEnumerable 成员
     
            System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
            {
                return this.dicv.GetEnumerator();
            }
     
            #endregion
        }
        /// <summary>
        /// 区间谓词
        /// </summary>
        public class SpacePredication : IEnumerable<KeyValuePair<string, ExtremumPair>>
        {
            Dictionary<string, ExtremumPair> dic = null;
            /// <summary>
            /// 区间谓词 构造函数
            /// </summary>
            public SpacePredication()
            {
                dic = new Dictionary<string, ExtremumPair>();
     
            }
     
            /// <summary>
            /// 索引器
            /// </summary>
            /// <param name="index">索引值</param>
            /// <returns>区间极值值对</returns>
            public ExtremumPair this[string index]
            {
                get { return dic[index]; }
            }
     
            /// <summary>
            /// 验证键是否存在值
            /// </summary>
            /// <param name="index">键</param>
            /// <returns>bool</returns>
            public bool ContainsKey(string index)
            {
                return this.dic.ContainsKey(index);
            }
     
     
     
            /// <summary>
            /// 增加新项
            /// </summary>
            /// <param name="_enum">列枚举[只能接受非FLAG得单个枚举]</param>
            /// <param name="extremumPair"></param>
            public void AddItem(string key, ExtremumPair extremumPair)
            {
                this.dic.Add(key, extremumPair);
            }
            /// <summary>
            /// 移除制定 列枚举 的项
            /// </summary>
            /// <param name="key">列枚举[只能接受非FLAG得单个枚举]</param>
            public void RemoveItem(string key)
            {
                this.dic.Remove(key);
            }
     
            #region IEnumerable<KeyValuePair<string,ExtremumPair>> 成员
     
            public IEnumerator<KeyValuePair<string, ExtremumPair>> GetEnumerator()
            {
                return this.dic.GetEnumerator();
            }
     
            #endregion
     
            #region IEnumerable 成员
     
            System.Collections.IEnumerator System.Collections.IEnumerable.GetEnumerator()
            {
                return this.dic.GetEnumerator();
            }
     
            #endregion
        }
     
        /// <summary>
        /// 区间极值值对
        /// </summary>
        public class ExtremumPair
        {
            object leftValue, rightValue;
            /// <summary>
            /// 左极值
            /// </summary>
            public object LeftValue { get { return leftValue; } }
            /// <summary>
            /// 右极值
            /// </summary>
            public object RightValue { get { return rightValue; } }
            /// <summary>
            /// 区间极值值对 构造函数
            /// </summary>
            /// <param name="leftValue">左极值</param>
            /// <param name="rightValue">右极值</param>
            public ExtremumPair(object leftValue, object rightValue)
            {
                this.leftValue = leftValue;
                this.rightValue = rightValue;
            }
        }
     
        /// <summary>
        /// 通用分页参数 
        /// </summary>
        public class PagingParam
        {
            int pageSize = 10;
            int pageIndex = 1;
            int pageTotal = -1;
            /// <summary>
            /// 页面大小
            /// </summary>
            public int PageSize { get { return pageSize; } }
            /// <summary>
            /// 页码
            /// </summary>
            public int PageIndex { get { return pageIndex; } }
     
            public int PageTotal { get { return pageTotal; } }
            /// 构造函数
            /// </summary>
            public PagingParam()
            {
            }
            /// <summary>
            /// 通用分页参数结构 构造函数
            /// </summary>
            /// <param name="pageIndex">页码</param>
            /// <param name="pageSize">页面大小</param>
            public PagingParam(int pageIndex, int pageSize)
            {
                this.pageIndex = pageIndex;
                this.pageSize = pageSize;
                this.pageTotal = PageSize;
            }
     
            public PagingParam(int pageIndex, int pageSize, int pageTotal)
            {
                this.pageIndex = pageIndex;
                this.pageSize = pageSize;
                this.pageTotal = pageTotal;
            }
     
        }
  • 相关阅读:
    Spring AOP概念理解 (通俗易懂)【转】
    【转】Spring AOP四种实现方式Demo详解与相关知识探究
    call的理解
    队列的执行顺序
    数组去重的方法
    要动态改变层中的内容的方法
    HTML5有哪些新特性,移除了哪些元素?如何处理HTML5新标签的浏览器兼容性问题?如何区分HTML和HTML5
    行内元素有哪些?块级元素有哪些? 空(void)元素有那些?
    HTML5头部为什么只需要写<!DOCTYPE HTML>
    link和@import引入外部样式的区别
  • 原文地址:https://www.cnblogs.com/lori/p/2067260.html
Copyright © 2011-2022 走看看