yl
2023-10-10 d570cdca55f34f8860f48bb30c5bea5b1f61390c
VueWebApi/Tools/DapperHelper.cs
@@ -45,6 +45,8 @@
            {
                try
                {
                    //用户操作记录写入数据表
                    //Log4net.LogUtil.SaveMessage("PC", "操作了xxxxx", "api/Login/LoginSave", ConfigurationManager.AppSettings["FileIP"], "9999", 1);
                    list = conn.Query<T>(sql, parm).ToList<T>();
                }
                catch (Exception ex)
@@ -211,6 +213,38 @@
        }
        /// <summary>
        /// Dapper查询返回datatable数据(带参数)
        /// </summary>
        /// <param name="sql"></param>
        /// <param name="parm"></param>
        /// <returns></returns>
        public static DataTable selectlist(string sql, Object parm)
        {
            //sql语句
            using (IDbConnection conn = sqlConnection())
            {
                try
                {
                    DataTable table = new DataTable();
                    var data = conn.ExecuteReader(sql, parm);
                    table.Load(data);
                    return table;
                }
                catch (Exception ex)
                {
                    //创建日志记录组件实例
                    LogHelper.WriteLog(ex);
                    throw ex;
                }
                finally
                {
                    conn.Dispose();
                    conn.Close();
                }
            }
        }
        /// <summary>
        /// Dapper查询返回datatable数据(不带参数)
        /// </summary>
        /// <param name="sql"></param>
@@ -273,6 +307,75 @@
                }
            }
        }
        /// <summary>
        /// Dapper执行存储过程返回datatable数据(带参数)
        /// </summary>
        /// <param name="sql">存储过程名</param>
        /// <param name="parm">参数</param>
        /// <returns></returns>
        public static bool IsProcedure(string sql, Object parm)
        {
            bool result;
            //sql语句
            using (IDbConnection conn = sqlConnection())
            {
                try
                {
                    DataTable table = new DataTable();
                    //var data = conn.ExecuteReader(sql, parm);
                    var res = conn.ExecuteReader(sql, parm, commandType: CommandType.StoredProcedure);//sql 存储过程
                    result = true;
                }
                catch (Exception ex)
                {
                    //创建日志记录组件实例
                    LogHelper.WriteLog(ex);
                    result = false;
                    throw ex;
                }
                finally
                {
                    conn.Dispose();
                    conn.Close();
                }
                return result;
            }
        }
        /// <summary>
        /// Dapper执行存储过程返回datatable数据(不带参数)
        /// </summary>
        /// <param name="sql">存储过程名</param>
        /// <returns></returns>
        public static bool IsProcedureNo(string sql)
        {
            bool result;
            //sql语句
            using (IDbConnection conn = sqlConnection())
            {
                try
                {
                    DataTable table = new DataTable();
                    //var data = conn.ExecuteReader(sql, parm);
                    var res = conn.ExecuteReader(sql);//sql 存储过程
                    result = true;
                }
                catch (Exception ex)
                {
                    //创建日志记录组件实例
                    LogHelper.WriteLog(ex);
                    result = false;
                    throw ex;
                }
                finally
                {
                    conn.Dispose();
                    conn.Close();
                }
                return result;
            }
        }
        /// <summary>
@@ -411,15 +514,14 @@
            }
        }
        /// <summary>
        /// Dapper插入 返回自增主键Id
        /// Dapper插入 返回自增主键Id(备份)
        /// </summary>
        /// <param name="sql"></param>
        /// <param name="parameter"></param>
        /// <param name="tableName">待插入数据的表名</param>
        /// <returns></returns>
        public static int insertReturnId(string sql, Object parameter, String tableName)
        public static int insertReturnId0(string sql, Object parameter, String tableName)
        {
            int result = 0;
@@ -447,5 +549,98 @@
            }
            return result;
        }
        /// <summary>
        /// Dapper 返回自增主键当前数据表最大Id
        /// </summary>
        /// <param name="tableName">待插入数据的表名</param>
        /// <returns></returns>
        public static int insertReturnId(String tableName)
        {
            int result = 0;
            using (IDbConnection conn = sqlConnection())
            {
                try
                {
                    if (result == 0)
                    {
                        result = conn.Query<int>("select ident_current(@table)", new { table = tableName }).Single<int>();
                    }
                }
                catch (Exception ex)
                {
                    //创建日志记录组件实例
                    LogHelper.WriteLog(ex);
                    throw ex;
                }
                finally
                {
                    conn.Dispose();
                    conn.Close();
                }
            }
            return result;
        }
        /// <summary>
        /// 执行sql执行语句,返回字符串
        /// </summary>
        /// <param name="sql"></param>
        /// <returns></returns>
        public static string sqlstr(String sql)
        {
            string result = "";
            using (IDbConnection conn = sqlConnection())
            {
                try
                {
                    if (result == "")
                    {
                        result = conn.Query<string>(sql).First();
                    }
                }
                catch (Exception ex)
                {
                    //创建日志记录组件实例
                    LogHelper.WriteLog(ex);
                    throw ex;
                }
                finally
                {
                    conn.Dispose();
                    conn.Close();
                }
            }
            return result;
        }
        public static DataTable lissql(string sql)
        {
            //sql语句
            using (IDbConnection conn = sqlConnection())
            {
                try
                {
                    DataTable table = new DataTable();
                    //var data = conn.ExecuteReader(sql, parm);
                    var res = conn.ExecuteReader(sql);//sql 存储过程
                    table.Load(res);
                    return table;
                }
                catch (Exception ex)
                {
                    //创建日志记录组件实例
                    LogHelper.WriteLog(ex);
                    throw ex;
                }
                finally
                {
                    conn.Dispose();
                    conn.Close();
                }
            }
        }
    }
}