Exemple #1
0
        /// <summary>
        /// 批量删除
        /// </summary>
        /// <param name="idList"></param>
        /// <returns></returns>
        public bool DeleteList(List <int> idList, int actType)
        {
            Type type = typeof(T);
            List <CommandInfo> comList = new List <CommandInfo>();

            foreach (int id in idList)
            {
                string strWhere = $"[{type.GetPrimary()}]=@Id";
                string delSql   = "";
                if (actType == 1)
                {
                    delSql = CreateSql.CreateDeleteSql <T>(strWhere);
                }
                else
                {
                    delSql = $"update [{type.GetTName()}] set IsDeleted=1 where {strWhere}";
                }
                SqlParameter[] paras =
                {
                    new SqlParameter("@Id", id)
                };
                CommandInfo com = new CommandInfo(delSql, false, paras);
                comList.Add(com);
            }
            return(SqlHelper.ExecuteTrans(comList));
        }
Exemple #2
0
        /// <summary>
        /// 添加实体信息
        /// </summary>
        /// <param name="t"></param>
        /// <param name="strCols">插入列名字符串,若为空,则全插入</param>
        /// <returns></returns>
        public int Add(T t, string strCols, int isReturn)
        {
            if (t == null)
            {
                return(0);
            }
            //获取生成的sql和参数列表
            SqlModel insert = CreateSql.GetInsertSqlAndParas <T>(t, strCols, isReturn);

            //执行sql命令
            if (isReturn == 0)
            {
                return(SqlHelper.ExecuteNonQuery(insert.Sql, 1, insert.SqlParaArray));
            }
            else
            {
                object oId = SqlHelper.ExecuteScalar(insert.Sql, 1, insert.SqlParaArray);
                if (oId != null && oId.ToString() != "")
                {
                    return(oId.GetInt());
                }
                else
                {
                    return(0);
                }
            }
        }
Exemple #3
0
        /// <summary>
        /// 按条件查询获取实体信息
        /// </summary>
        /// <param name="strWhere"></param>
        /// <param name="strCols"></param>
        /// <param name="paras"></param>
        /// <returns></returns>
        public T GetModel(string strWhere, string strCols, params SqlParameter[] paras)
        {
            //生成查询语句
            string selSql = CreateSql.CreateSelectSql <T>(strWhere, strCols);
            //生成Reader对象
            SqlDataReader reader = SqlHelper.ExecuteReader(selSql, 1, paras);
            //转换为实体对象
            T model = DbConvert.SqlDataReaderToModel <T>(reader, strCols);

            //关闭阅读器
            reader.Close();
            return(model);
        }
Exemple #4
0
        /// <summary>
        /// 批量插入
        /// </summary>
        /// <param name="list"></param>
        /// <param name="strCols"></param>
        /// <returns></returns>
        public bool AddList(List <T> list, string strCols)
        {
            if (list == null || list.Count == 0)
            {
                return(false);
            }
            List <CommandInfo> comList = new List <CommandInfo>();

            foreach (T t in list)
            {
                SqlModel    insert = CreateSql.GetInsertSqlAndParas <T>(t, strCols, 0);
                CommandInfo com    = new CommandInfo(insert.Sql, false, insert.SqlParaArray);
                comList.Add(com);
            }
            return(SqlHelper.ExecuteTrans(comList));
        }
Exemple #5
0
        /// <summary>
        /// 执行分页查询 按类别编号 关键字查询
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="typeId"></param>
        /// <param name="keywords"></param>
        /// <param name="strCols"></param>
        /// <param name="proName"></param>
        /// <param name="startIndex"></param>
        /// <param name="pageSize"></param>
        /// <returns></returns>
        public DataSet GetPageDs <S>(string strWhere, int typeId, string keywords, string strCols, string proName, int startIndex, int pageSize)
        {
            List <SqlParameter> listParas = new List <SqlParameter>();

            listParas.Add(new SqlParameter("@typeId", typeId));
            listParas.Add(new SqlParameter("@keywords", keywords));

            string sql = CreateSql.CreateRowsSelectSql <S>(strWhere, strCols);

            listParas.Add(new SqlParameter("@sql", sql));
            listParas.Add(new SqlParameter("@startIndex", startIndex));
            listParas.Add(new SqlParameter("@endIndex", startIndex + pageSize - 1));
            DataSet ds = GetDs(proName, 2, listParas.ToArray());

            return(ds);
        }
Exemple #6
0
        /// <summary>
        /// 修改信息实体
        /// </summary>
        /// <param name="t"></param>
        /// <param name="strCols">要修改的列</param>
        /// <param name="strWhere">条件 </param>
        /// <returns></returns>
        public bool Update(T t, string strCols, string strWhere, params SqlParameter[] paras)
        {
            if (t == null)
            {
                return(false);
            }
            //获取生成的sql和参数列表
            SqlModel            update    = CreateSql.GetUpdateSqlAndParas <T>(t, strCols, strWhere);
            List <SqlParameter> listParas = update.SqlParaArray.ToList();

            if (paras != null && paras.Length > 0)
            {
                listParas.AddRange(paras);
            }
            //执行sql命令
            return(SqlHelper.ExecuteNonQuery(update.Sql, 1, listParas.ToArray()) > 0);
        }
Exemple #7
0
        /// <summary>
        /// 按条件查询返回实体列表
        /// </summary>
        /// <param name="strWhere">条件</param>
        /// <param name="strCols">查询字段</param>
        /// <param name="paras">参数数组</param>
        /// <returns>List<T></returns>
        public List <T> GetModelList(string strWhere, string strCols, params SqlParameter[] paras)
        {
            if (string.IsNullOrEmpty(strWhere))
            {
                strWhere = "1=1";
            }
            //生成查询语句
            string selSql = CreateSql.CreateSelectSql <T>(strWhere, strCols);
            //生成Reader
            SqlDataReader reader = SqlHelper.ExecuteReader(selSql, 1, paras);
            //转换为List<T>列表
            List <T> list = DbConvert.SqlDataReaderToList <T>(reader, strCols);

            //关闭阅读器
            reader.Close();
            return(list);
        }
Exemple #8
0
        /// <summary>
        /// 按条件删除数据
        /// </summary>
        /// <param name="strWhere">条件</param>
        /// <param name="paras">参数列表</param>
        /// <returns></returns>
        public bool Delete(int actType, string strWhere, SqlParameter[] paras)
        {
            Type   type   = typeof(T);
            string delSql = "";

            if (actType == 1)
            {
                delSql = CreateSql.CreateDeleteSql <T>(strWhere);
            }
            else
            {
                delSql = $"update [{type.GetTName()}] set IsDeleted=1 where {strWhere}";
            }
            List <CommandInfo> list = new List <CommandInfo>();

            list.Add(new CommandInfo()
            {
                CommandText = delSql,
                IsProc      = false,
                Paras       = paras
            });
            return(SqlHelper.ExecuteTrans(list));
        }