示例#1
0
        public static int Execute(this IDbConnection dbconnection, ISQLinq query,
                                  IDbTransaction transaction = null, int?commandTimeout = null, CommandType?commandType = null)
        {
            var result = query.ToSQL();

            var sql        = result.ToQuery();
            var parameters = new DictionaryParameterObject(result.Parameters);

            return(DapperDotNet.SqlMapper.Execute(dbconnection, sql, parameters, transaction, commandTimeout, commandType));
        }
示例#2
0
        public static IEnumerable <dynamic> Query(this IDbConnection dbconnection, ISQLinq query,
                                                  IDbTransaction transaction = null, bool buffered = true, int?commandTimeout = null, CommandType?commandType = null)
        {
            var result = query.ToSQL();

            var sql        = result.ToQuery();
            var parameters = new DictionaryParameterObject(result.Parameters);

            return(DapperDotNet.SqlMapper.Query(dbconnection, sql, parameters, transaction, buffered, commandTimeout, commandType));
        }
示例#3
0
        public static TIdentity Execute <TIdentity>(this IDbConnection dbconnection, ISQLinqInsert query,
                                                    IDbTransaction transaction = null, int?commandTimeout = null, CommandType?commandType = null)
        {
            var result = query.ToSQL();

            var sql        = result.ToQuery();
            var parameters = new DictionaryParameterObject(result.Parameters);

            using (
                var reader = DapperDotNet.SqlMapper.ExecuteReader(dbconnection, sql, parameters, transaction,
                                                                  commandTimeout, commandType))
            {
                if (reader.Read() && !reader.IsDBNull(0))
                {
                    var value = reader.GetValue(0);
                    reader.Close();
                    return((TIdentity)Convert.ChangeType(value, typeof(TIdentity)));
                }

                return(default(TIdentity));
            }
        }