Dapper 幫助類


Dapper 幫助類

    /// <summary>
    /// Dapper 工具類
    /// </summary>
    public static class DapperHelper
    {

        static string sqlconnection = System.Configuration.ConfigurationManager.ConnectionStrings["sqlServer"].ToString();

        private static SqlConnection OpenConnection()
        {

            SqlConnection connection = new SqlConnection(sqlconnection);  //這里sqlconnection就是數據庫連接字符串
            connection.Open();
            return connection;
        }

        #region 查詢數據
        /// <summary>
        /// 查詢數據
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="sql">sql</param>
        /// <param name="entity">T</param>
        /// <returns></returns>
        public static List<T> Query<T>(string sql, T entity)
        {
            List<T> list = new List<T>();
            using (IDbConnection conn = OpenConnection())
            {

                list = conn.Query<T>(sql, entity).ToList();

            }
            return list;
        }


        /// <summary>
        /// 查詢數據
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="sql">sql</param>
        /// <param name="obj">new {}</param>
        /// <returns></returns>
        public static List<T> Query<T>(string sql, object obj)
        {
            List<T> list = new List<T>();
            using (IDbConnection conn = OpenConnection())
            {
                list = conn.Query<T>(sql, obj).ToList();
            }
            return list;
        }

        /// <summary>
        /// 查詢第一行第一列的數據
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="sql">sql</param>
        /// <param name="obj">new {}</param>
        /// <returns></returns>
        public static T QueryScalar<T>(string sql, object obj)
        {

            T result = default(T);

            using (IDbConnection conn = OpenConnection())
            {
                result = conn.ExecuteScalar<T>(sql, obj);
            }
            return result;
        }
        #endregion

        #region 執行增,刪,改 
        /// <summary>
        /// 執行增,刪,改 
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="sql">sql</param>
        /// <param name="entity"></param>
        /// <returns></returns>
        public static int NonQuery<T>(string sql, T entity)
        {
            int res = 0;
            using (IDbConnection conn = OpenConnection())
            {
                res = conn.Execute(sql, entity);
            }
            return res;
        }

        /// <summary>
        /// 執行增,刪,改 
        /// </summary>
        /// <typeparam name="T"></typeparam>
        /// <param name="sql">sql</param>
        /// <param name="entity"></param>
        /// <returns></returns>
        public static int NonQuery(string sql, object obj)
        {
            int res = 0;
            using (IDbConnection conn = OpenConnection())
            {
                res = conn.Execute(sql, obj);
            }
            return res;
        }
        #endregion

    }

調用實例1

	Role role =new Role();
	// 給role賦值ID,RoleName,Description,CreateTime
	string sql = "INSERT INTO [Role] ([ID],[RoleName],[Description],					[CreateTime]) VALUES(NEWID(),@RoleName,@Description,getdate())";

    int num = DapperHelper.NonQuery<Role>(sql, role);

調用實例2

	string sql = "INSERT INTO [Role] ([ID],[RoleName],[Description],					[CreateTime]) VALUES(NEWID(),@RoleName,@Description,getdate())";

    int num = DapperHelper.NonQuery<Role>(sql, new {ID=ID,RoleName=RoleName,Description=Description,CreateTime=CreateTime});

目前只封裝了這些方法需要的話以后再寫

感興趣的可以加QQ群:765907694 一起交流,探討技術問題


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM