Exemple #1
0
        /// <summary>
        /// 通过condition获得一个参数信息
        /// </summary>
        /// <param name="condition"></param>
        /// <param name="grid"></param>
        /// <returns></returns>
        public ParamerInfo GetParamerInfo(FilterCondition condition)
        {
            ParamerInfo paramerInfo = new ParamerInfo();

            paramerInfo.ParamerName  = this.GetParamerName(condition);
            paramerInfo.ParamerValue = this.GetParamerValue(condition);
            //通过fileld.Type转换成Type typeObj
            Type typeObj = ValueToTypeHash[condition.ValueType];

            //转换成NHibernate用的IType
            paramerInfo.ParamerType = NHibernate.Type.TypeFactory.GetSerializableType(typeObj);
            return(paramerInfo);
        }
Exemple #2
0
        /// <summary>
        /// 当condition.FilterType != FilterType.List时,根据condition获得参数集合
        /// </summary>
        /// <param name="condition"></param>
        /// <returns></returns>
        public List <ParamerInfo> GetParamerInfoList(FilterCondition condition)
        {
            List <ParamerInfo> paramerList = new List <ParamerInfo>();

            for (int i = 0; i < condition.List.Count; i++)
            {
                ParamerInfo paramerInfo = new ParamerInfo();
                paramerInfo.ParamerValue = condition.List[i];
                paramerInfo.ParamerName  = string.Format(this.ListSingleParamerNameFormat, this.GetParamerName(condition), i);
                paramerInfo.ParamerType  = NHibernate.Type.TypeFactory.GetSerializableType(typeof(string));
                paramerList.Add(paramerInfo);
            }
            return(paramerList);
        }
Exemple #3
0
        /// <summary>
        /// 从conditionList中提取参数集合
        /// </summary>
        /// <param name="conditionList"></param>
        /// <returns></returns>
        public List <ParamerInfo> GetParamerInfoList(IEnumerable <FilterCondition> conditionList)
        {
            List <ParamerInfo> paramerList = new List <ParamerInfo>();

            foreach (FilterCondition condition in conditionList)
            {
                if (condition.Type != FilterType.List)
                {
                    ParamerInfo paramerInfo = this.GetParamerInfo(condition);
                    paramerList.Add(paramerInfo);
                }
                else
                {
                    List <ParamerInfo> subParamerList = this.GetParamerInfoList(condition);
                    paramerList.AddRange(subParamerList);
                }
            }
            return(paramerList);
        }