Beispiel #1
0
        /// <summary>
        /// 获取数据列表(分页)
        /// </summary>
        public PageModel GetDataListForPage(PageSearchRequest pt, string PhysicalTable, string keyword)
        {
            string sqlStr   = @"select * from TbFormWindowsShowFields";
            string whereStr = " where 1=1 and FormWindowsTableName is not null and (ISNULL('" + PhysicalTable + "','')='' or PhysicalTableName='" + PhysicalTable + "')";

            #region 模糊搜索条件
            var wherep = new List <Dos.ORM.Parameter>();
            if (!string.IsNullOrWhiteSpace(keyword))
            {
                whereStr += " and (PhysicalTableName like '%'+@keyword+'%' or FieldName like '%'+@keyword+'%' or FieldCode like '%'+@keyword+'%')";
                var p = new Dos.ORM.Parameter("@keyword", keyword, DbType.String, null);
                wherep.Add(p);
            }
            #endregion

            try
            {
                //取总数,以计算共多少页。
                var count = Repository <TbFormWindowsShowFields> .FromSql(sqlStr + whereStr, wherep).Count();

                var model = Repository <TbFormWindowsShowFields> .FromSql(sqlStr + whereStr, wherep, "PhysicalTableName,FieldShowOrder", pt.sord, pt.rows, pt.page).ToList();

                var model1 = new PageModel(pt.page, pt.rows, count, model);
                return(model1);
            }
            catch (Exception)
            {
                throw;
            }
        }
Beispiel #2
0
        /// <summary>
        /// 构造函数
        /// </summary>
        /// <param name="field"></param>
        /// <param name="value"></param>
        /// <param name="oper"></param>
        /// <param name="isFieldBefore"></param>
        public Expression(Field field, object value, QueryOperator oper, bool isFieldBefore)
        {
            if (!Field.IsNullOrEmpty(field))
            {
                string valuestring = null;
                if (value is Expression)
                {
                    Expression expression = (Expression)value;
                    valuestring = expression.ToString();
                    parameters.AddRange(expression.Parameters);
                }
                else if (value is Field)
                {
                    Field fieldValue = (Field)value;
                    valuestring = fieldValue.TableFieldName;
                }
                else
                {
                    valuestring = DataUtils.MakeUniqueKey(field);
                    //valuestring = field.tableName + field.Name;
                    Parameter p = new Parameter(valuestring, value, field.ParameterDbType, field.ParameterSize);
                    parameters.Add(p);
                }

                if (isFieldBefore)
                {
                    this.expressionString = string.Concat(field.TableFieldName, DataUtils.ToString(oper), valuestring);
                }
                else
                {
                    this.expressionString = string.Concat(valuestring, DataUtils.ToString(oper), field.TableFieldName);
                }
            }
        }