Example #1
0
        /// <summary>
        /// Ejecuta el query en un contexto de EF. Devuelve la cantidad de filas afectadas
        /// Abre la conexión en caso de que no este abierta y la deja abierta
        /// </summary>
        public static async Task <int> Execute <TDb>(this ISqlStatement statement, DbContext context)
        {
            var sql  = statement.ToSql();
            var pars = NpgsqlParamLogic.GetParams(sql.Params);

            return(await DoConnection(context, async conn => await NpgsqlMapper.ExecuteAsync(conn, sql)));
        }
Example #2
0
        /// <summary>
        /// Execute the given statement and returns the number of affected rows
        /// </summary>
        public static async Task <int> ExecuteAsync <TDb>(this ISqlStatement statement, NpgsqlConnection conn)
        {
            var sql  = statement.ToSql();
            var pars = NpgsqlParamLogic.GetParams(sql.Params);

            return(await NpgsqlMapper.ExecuteAsync(conn, sql));
        }
Example #3
0
        /// <summary>
        /// Execute the given statement and returns the number of affected rows
        /// </summary>
        public static int Execute <TDb>(this ISqlStatement statement, NpgsqlConnection conn)
        {
            var sql  = statement.ToSql();
            var pars = NpgsqlParamLogic.GetParams(sql.Params);

            return(NpgsqlMapper.Execute(conn, sql));
        }
Example #4
0
 /// <summary>
 /// Obtiene el SQL y los parámetros de un select, los parámetros se sustituyen para queries de Entity Framework
 /// </summary>
 public static SqlResult ToSql(this ISqlStatement statement) => statement.ToSql(ParamMode.EntityFramework);