Esempio n. 1
0
        protected List <T> SPQuery <T>(string spName, object paras)
        {
            List <T> list;

            using (ConnectionManager mgr = GetConnection())
            {
                using (ISQLMetrics metrics = CreateSQLMetrics())
                {
                    list = mgr.Connection.Query <T>(spName, paras, mgr.Transaction, false, null, CommandType.StoredProcedure).ToList();
                    metrics.AddToMetrics(spName, paras);
                }
            }
            return(list);
        }
Esempio n. 2
0
        protected int SPExcute(string spName, object paras)
        {
            int ret;

            using (ConnectionManager mgr = GetConnection())
            {
                using (ISQLMetrics metrics = CreateSQLMetrics())
                {
                    ret = mgr.Connection.Execute(spName, paras, mgr.Transaction, null, CommandType.StoredProcedure);
                    metrics.AddToMetrics(spName, paras);
                }
            }
            return(ret);
        }
Esempio n. 3
0
        protected List <T> Query <T, T1, T2, T3>(string sql, object paras, Func <T, T1, T2, T3, T> parse, string splitOn)
        {
            List <T> list;

            using (ConnectionManager mgr = GetConnection())
            {
                using (ISQLMetrics metrics = CreateSQLMetrics())
                {
                    list = mgr.Connection.Query <T, T1, T2, T3, T>(sql, parse, paras, mgr.Transaction, false, splitOn, 60000, CommandType.Text).ToList();
                    metrics.AddToMetrics(sql, paras);
                }
            }
            return(list);
        }
Esempio n. 4
0
        protected List <T> Query <T>(string sql, int timeOut, object paras)
        {
            List <T> list;

            using (ConnectionManager mgr = GetConnection())
            {
                using (ISQLMetrics metrics = CreateSQLMetrics())
                {
                    list = mgr.Connection.Query <T>(sql, paras, mgr.Transaction, false, timeOut, CommandType.Text).ToList();
                    metrics.AddToMetrics(sql, paras);
                }
            }
            return(list);
        }
Esempio n. 5
0
        protected int Excute(string sql, int timeOut, object paras)
        {
            int ret;

            using (ConnectionManager mgr = GetConnection())
            {
                using (ISQLMetrics metrics = CreateSQLMetrics())
                {
                    ret = mgr.Connection.Execute(sql, paras, mgr.Transaction, timeOut, CommandType.Text);
                    metrics.AddToMetrics(sql, paras);
                }
            }
            return(ret);
        }
Esempio n. 6
0
        protected async Task <T> SPGetAsync <T>(string spName, object paras)
        {
            T ret = default(T);

            using (ConnectionManager mgr = GetConnection())
            {
                using (ISQLMetrics metrics = CreateSQLMetrics())
                {
                    ret = await mgr.Connection.QueryFirstOrDefaultAsync <T>(spName, paras, mgr.Transaction, null, CommandType.StoredProcedure);

                    metrics.AddToMetrics(spName, paras);
                }
            }
            return(ret);
        }
Esempio n. 7
0
        /// <summary>
        /// 如果主键是自增返回插入主键 否则返回0
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public long Insert(AbstractBaseEntity entity)
        {
            long ret;

            using (ConnectionManager mgr = GetConnection())
            {
                using (ISQLMetrics metrics = CreateSQLMetrics())
                {
                    string sql = entity.GetInsertSQL();
                    ret = mgr.Connection.Query <long>(sql, entity, mgr.Transaction, false, null, CommandType.Text).Single();
                    metrics.AddToMetrics(sql, entity);
                }
            }
            return(ret);
        }
Esempio n. 8
0
        protected async Task <int> ExcuteAsync(string sql, object paras)
        {
            int ret;

            using (ConnectionManager mgr = GetConnection())
            {
                using (ISQLMetrics metrics = CreateSQLMetrics())
                {
                    ret = await mgr.Connection.ExecuteAsync(sql, paras, mgr.Transaction, null, CommandType.Text);

                    metrics.AddToMetrics(sql, paras);
                }
            }
            return(ret);
        }
Esempio n. 9
0
        /// <summary>
        /// 异步执行插入操作
        /// </summary>
        /// <param name="entity"></param>
        /// <returns></returns>
        public async Task <long> InsertAsync(AbstractBaseEntity entity)
        {
            long ret;

            using (ConnectionManager mgr = GetConnection())
            {
                using (ISQLMetrics metrics = CreateSQLMetrics())
                {
                    var sql = entity.GetInsertSQL();
                    ret = await mgr.Connection.QueryFirstAsync <long>(entity.GetInsertSQL(), entity, mgr.Transaction, null, CommandType.Text);

                    metrics.AddToMetrics(sql, entity);
                }
            }
            return(ret);
        }
Esempio n. 10
0
        protected async Task <List <T> > SPQueryAsync <T>(string spName, object paras)
        {
            List <T> ret = null;

            using (ConnectionManager mgr = GetConnection())
            {
                using (ISQLMetrics metrics = CreateSQLMetrics())
                {
                    var qlist = await mgr.Connection.QueryAsync <T>(spName, paras, mgr.Transaction, null, CommandType.StoredProcedure);

                    ret = qlist.ToList();
                    metrics.AddToMetrics(spName, paras);
                }
            }
            return(ret);
        }
Esempio n. 11
0
        protected async Task <List <T> > QueryAsync <T, T1>(string sql, object paras, Func <T, T1, T> parse, string splitOn)
        {
            List <T> list;

            using (ConnectionManager mgr = GetConnection())
            {
                using (ISQLMetrics metrics = CreateSQLMetrics())
                {
                    var qlist = await mgr.Connection.QueryAsync <T, T1, T>(sql, parse, paras, mgr.Transaction, false, splitOn, 60000, CommandType.Text);

                    list = qlist.ToList();
                    metrics.AddToMetrics(sql, paras);
                }
            }
            return(list);
        }
Esempio n. 12
0
        protected async Task <List <T> > QueryAsync <T>(string sql, int timeOut, object paras)
        {
            List <T> list;

            using (ConnectionManager mgr = GetConnection())
            {
                using (ISQLMetrics metrics = CreateSQLMetrics())
                {
                    var qlist = await mgr.Connection.QueryAsync <T>(sql, paras, mgr.Transaction, timeOut, CommandType.Text);

                    list = qlist.ToList();
                    metrics.AddToMetrics(sql, paras);
                }
            }
            return(list);
        }