Exemplo n.º 1
0
 /// <summary>
 /// 获取一定数量的数据
 /// </summary>
 /// <param name="condition">搜索条件</param>
 /// <param name="quantity">获取的数量, 如果值为0则获取所有符合条件的数据</param>
 /// <returns></returns>
 public virtual List <TEntity> SelectBy(DbConditionBuilder condition, int quantity)
 {
     if (quantity > 0)
     {
         return(this.Provider.DbHelper.Executor.Select <TEntity>(quantity, TableName, condition));
     }
     else
     {
         return(this.Provider.DbHelper.Executor.Select <TEntity>(TableName, condition));
     }
 }
Exemplo n.º 2
0
        /// <summary>
        /// 查询总数
        /// </summary>
        /// <param name="condition"></param>
        /// <returns></returns>
        public virtual int GetDataCount(DbConditionBuilder condition)
        {
            System.Text.StringBuilder builder = new System.Text.StringBuilder();
            builder.AppendFormat("SELECT COUNT(1) FROM {0}", TableName);
            if (condition == null)
            {
                condition = this.Provider.DbHelper.CreateDBConditionBuilder();
                builder.Append(condition);
            }
            builder.Append(condition);
            builder.Append(";");
            int count = Convert.ToInt32(this.Provider.DbHelper.ExecuteScalar(builder.ToString(), condition.Parameters));

            return(count);
        }
Exemplo n.º 3
0
        /// <summary>
        /// 获取分页数据
        /// </summary>
        /// <param name="condition">搜索条件</param>
        /// <param name="page">显示的页码</param>
        /// <param name="pageSize">页码大小</param>
        /// <param name="pageCount">页码总数</param>
        /// <param name="recordCount">数据总数</param>
        /// <returns></returns>
        public virtual List <T> SelectBy <T>(DbConditionBuilder condition, ref int page, int pageSize, out int pageCount, out int recordCount)
        {
            MySqlDataPagingReader reader = new MySqlDataPagingReader((MySqlDbHelper)this.Provider.DbHelper);

            reader.Select    = string.Format("SELECT * FROM {0}", this.Provider.DbHelper.QuoteIdentifier(TableName));
            reader.Condition = condition;

            reader.PageNumber = page;
            reader.PageSize   = pageSize;

            var entities = reader.ReadAsDbObjectList <T>();

            page        = reader.PageNumber;
            pageCount   = reader.PageCount;
            recordCount = reader.RecordCount;

            return(entities);
        }
Exemplo n.º 4
0
        /// <summary>
        /// 多表联合查询
        /// </summary>
        /// <param name="selColumn">查询列(有别名需带别名)</param>
        /// <param name="selTableInner">>查询表(有别名需带别名)</param>
        /// <param name="condition">条件</param>
        /// <param name="selSort">>排序列(有别名需带别名,需加ASC、DESC)</param>
        /// <param name="quantity">查询记录条数</param>
        /// <returns>DataSet</returns>
        public virtual DataSet GetDataListByMoreTable(string selColumn, string selTableInner, DbConditionBuilder condition, string selSort, int quantity)
        {
            System.Text.StringBuilder builder = new System.Text.StringBuilder();
            builder.AppendFormat("SELECT {0} FROM {1}", selColumn, selTableInner);
            if (condition == null)
            {
                condition = this.Provider.DbHelper.CreateDBConditionBuilder();
            }

            builder.Append(condition);

            if (selSort != null && selSort.Length > 0)
            {
                builder.AppendFormat(" ORDER BY {0} ", selSort);
            }
            if (quantity > 0)
            {
                builder.AppendFormat(" limit 0,{0} ", quantity);
            }
            builder.Append(";");
            return(this.Provider.DbHelper.ExecuteDataSet(builder.ToString(), condition.Parameters));
        }