Exemple #1
0
        /// <summary>
        /// 根据ID删除数据
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="id"></param>
        /// <returns></returns>
        public bool DeleteById <T>(int id) where T : BaseModel
        {
            Type   type = typeof(T);
            string sql  = SqlStringCache <T> .GetDelteSql() + id;

            return(Execute(sql, i =>
            {
                return i.ExecuteNonQuery() > 0;
            }));
        }
Exemple #2
0
        /// <summary>
        /// 新增数据
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool Insert <T>(T model) where T : BaseModel
        {
            Type   type = model.GetType();
            string sql  = SqlStringCache <T> .GetInsertSql();

            SqlParameter[] sqlParameters = type.GetNoKeyProperties().Select(i => new SqlParameter($"@{i.Name}", i.GetValue(model) == null ? DBNull.Value : i.GetValue(model))).ToArray();
            return(Execute(sql, i =>
            {
                return i.ExecuteNonQuery() > 0;
            }, sqlParameters));
        }
Exemple #3
0
        /// <summary>
        /// 根据ID修改数据
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="id"></param>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool UpdateById <T>(int id, T model) where T : BaseModel
        {
            Type   type = typeof(T);
            string sql  = SqlStringCache <T> .GetUpdateSql() + id;

            SqlParameter[] sqlParameters = type.GetNoKeyProperties().Select(i => new SqlParameter($"@{i.Name}", i.GetValue(model) == null ? DBNull.Value : i.GetValue(model))).ToArray();

            return(Execute(sql, i =>
            {
                return i.ExecuteNonQuery() > 0;
            }, sqlParameters));
        }
Exemple #4
0
        /// <summary>
        /// 根据ID查询
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="id"></param>
        /// <returns></returns>
        public T QueryById <T>(int id) where T : BaseModel
        {
            Type   type = typeof(T);
            string sql  = $"{SqlStringCache<T>.GetQuerySql()}where id={id}";

            return(Execute(sql, i =>
            {
                SqlDataReader reader = i.ExecuteReader();
                if (reader.Read())
                {
                    return GetDate <T>(reader);
                }
                return null;
            }));
        }
Exemple #5
0
        /// <summary>
        /// 查询所有数据
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <returns></returns>
        public List <T> QueryAll <T>() where T : BaseModel
        {
            Type   type = typeof(T);
            string sql  = SqlStringCache <T> .GetQuerySql();

            return(Execute(sql, i =>
            {
                List <T> result = new List <T>();
                SqlDataReader reader = i.ExecuteReader();

                while (reader.Read())
                {
                    result.Add(GetDate <T>(reader));
                }
                return result;
            }));
        }