public static async Task <T> FirstOrDefaultAsync <T>(this QueryFactory db, Query query)
        {
            var compiled = db.Compile(query.Limit(1));

            return(await db.Connection.QueryFirstOrDefaultAsync <T>(
                       compiled.Sql,
                       compiled.NamedBindings,
                       commandTimeout : db.QueryTimeout
                       ));
        }
        public static async Task <IEnumerable <T> > GetAsync <T>(this QueryFactory db, Query query)
        {
            var compiled = db.Compile(query);

            return(await db.Connection.QueryAsync <T>(
                       compiled.Sql,
                       compiled.NamedBindings,
                       commandTimeout : db.QueryTimeout
                       ));
        }
예제 #3
0
        public static IEnumerable <T> Get <T>(this QueryFactory db, Query query)
        {
            var compiled = db.Compile(query);

            return(db.Connection.Query <T>(
                       compiled.Sql,
                       compiled.NamedBindings,
                       commandTimeout: db.QueryTimeout
                       ));
        }
        public static async Task <IEnumerable <IDictionary <string, object> > > GetDictionaryAsync(this QueryFactory db, Query query)
        {
            var compiled = db.Compile(query);

            var result = await db.Connection.QueryAsync(
                compiled.Sql,
                compiled.NamedBindings,
                commandTimeout : db.QueryTimeout
                );

            return(result as IEnumerable <IDictionary <string, object> >);
        }
        public static T ExecuteScalar <T>(this QueryFactory db, Query query, IDbTransaction transaction = null, CommandType?commandType = null)
        {
            var compiled = db.Compile(query.Limit(1));

            return(db.Connection.ExecuteScalar <T>(
                       compiled.Sql,
                       compiled.NamedBindings,
                       transaction,
                       db.QueryTimeout,
                       commandType
                       ));
        }
        public static async Task <IEnumerable <T> > GetAsync <T>(this QueryFactory db, Query query)
        {
            var compiled = db.Compile(query);

            var result = (await db.Connection.QueryAsync <T>(
                              compiled.Sql,
                              compiled.NamedBindings,
                              commandTimeout: db.QueryTimeout
                              )).ToList();

            result = (await handleIncludesAsync(query, result)).ToList();

            return(result);
        }
        public static IEnumerable <T> Get <T>(this QueryFactory db, Query query)
        {
            var compiled = db.Compile(query);

            var result = db.Connection.Query <T>(
                compiled.Sql,
                compiled.NamedBindings,
                commandTimeout: db.QueryTimeout
                ).ToList();

            result = handleIncludes <T>(query, result).ToList();

            return(result);
        }
        public static async Task <int> ExecuteAsync(
            this QueryFactory db,
            Query query,
            IDbTransaction transaction = null,
            CommandType?commandType    = null
            )
        {
            var compiled = db.Compile(query);

            return(await db.Connection.ExecuteAsync(
                       compiled.Sql,
                       compiled.NamedBindings,
                       transaction,
                       db.QueryTimeout,
                       commandType
                       ));
        }
예제 #9
0
        public static int Execute(
            this QueryFactory db,
            Query query,
            IDbTransaction transaction = null,
            CommandType?commandType    = null
            )
        {
            var compiled = db.Compile(query);

            return(db.Connection.Execute(
                       compiled.Sql,
                       compiled.NamedBindings,
                       transaction ?? db.Transaction,
                       db.QueryTimeout,
                       commandType
                       ));
        }
        public static IEnumerable <IDictionary <string, object> > GetDictionary(this QueryFactory db, Query query)
        {
            var compiled = db.Compile(query);

            return(db.Connection.Query(compiled.Sql, compiled.NamedBindings, commandTimeout: db.QueryTimeout) as IEnumerable <IDictionary <string, object> >);
        }
예제 #11
0
        public static T First <T>(this QueryFactory db, Query query)
        {
            var compiled = db.Compile(query.Limit(1));

            return(db.Connection.QueryFirst <T>(compiled.Sql, compiled.NamedBindings, commandTimeout: db.QueryTimeout));
        }