示例#1
0
        public static Task Execute(
            IDbConfig dbConfig,
            IDbConnection dbConnection,
            EventContract eventContract)
        {
            var @params = new DynamicParameters();

            @params.Add(Columns.Id, dbConfig.CreateParameterResolver().WithGuidParameterValue(eventContract.Id));
            @params.Add(Columns.Event, eventContract.Event);
            @params.Add(Columns.Stop, dbConfig.CreateParameterResolver().WithBooleanParameterValue(eventContract.Stop));
            var sql = dbConfig.BuildSql();

            return(dbConnection.ExecuteAsync(sql, @params));
        }
示例#2
0
        public async static Task Execute(
            IDbConnection dbConnection,
            IDbConfig dbConfig,
            Person person)
        {
            var sql     = dbConfig.BuildSql();
            var @params = new DynamicParameters();

            @params.Add(nameof(Person.Id), dbConfig.CreateParameterResolver().WithGuidParameterValue(person.Id));
            @params.Add(nameof(Person.Alive), dbConfig.CreateParameterResolver().WithBooleanParameterValue(person.Alive));
            @params.Add(nameof(Person.Username), person.Username);
            @params.Add(nameof(Person.Password), person.Password);
            await dbConnection.ExecuteAsync(sql, @params);
        }
示例#3
0
        public static Task <Person> Execute(
            IDbConnection dbConnection,
            IDbConfig dbConfig,
            Guid id)
        {
            var sql     = dbConfig.BuildSql();
            var @params = new DynamicParameters();

            @params.Add(nameof(Person.Id), dbConfig.CreateParameterResolver().WithGuidParameterValue(id));
            return(dbConnection.QuerySingleAsync <Person>(sql, @params));
        }
示例#4
0
        public static Task Execute(
            IDbConfig dbConfig,
            IDbConnection dbConnection,
            Guid id)
        {
            var @params = new DynamicParameters();

            @params.Add(Columns.Id, dbConfig.CreateParameterResolver().WithGuidParameterValue(id));
            var sql = dbConfig.BuildSql();

            return(dbConnection.ExecuteAsync(sql, @params));
        }
示例#5
0
        private static string BuildSql(this IDbConfig dbConfig, out DynamicParameters @params)
        {
            @params = new DynamicParameters();
            @params.Add(nameof(Person.Alive), dbConfig.CreateParameterResolver().WithBooleanParameterValue(true));
            var sql = dbConfig.CreateSqlBuilder().Select()
                      .OnSchema()
                      .Count()
                      .Fields <Person>(x => x.F(item => item.Id))
                      .Where <Person>(x => x.WP(item => item.Alive))
                      .Build();

            return(sql);
        }
示例#6
0
        private static string BuildSql(this IDbConfig dbConfig)
        {
            var parameterResolver = dbConfig.CreateParameterResolver();
            var sql = dbConfig.CreateSqlBuilder().Insert <Person>()
                      .OnSchema()
                      .Fields(x => x.FP(item => item.Id))
                      .Fields(x => x.FV(item => item.SequenceNumber, parameterResolver.WithNextTableSequence <Person>(), ignoreFormat: true))
                      .Fields(x => x.FP(item => item.Alive))
                      .Fields(x => x.FP(item => item.Username))
                      .Fields(x => x.FP(item => item.Password))
                      .Build();

            return(sql);
        }
示例#7
0
        private static string BuildSql(this IDbConfig dbConfig, Guid[] ids, out DynamicParameters @params)
        {
            @params = new DynamicParameters();
            var inSelections = dbConfig.CreateParameterResolver().AddArrayParameter(@params, Columns.Id, ids);
            var sql          = dbConfig.CreateSqlBuilder().Select()
                               .OnSchema()
                               .From <EventContract>(Tables.EventTable)
                               .Fields <EventContract>(x => x.F(item => item.Id))
                               .Fields <EventContract>(x => x.F(item => item.Event))
                               .Fields <EventContract>(x => x.F(item => item.Stop))
                               .Where <EventContract>(x => x.WP(item => item.Id, inSelections))
                               .Build();

            return(sql);
        }
示例#8
0
        private static string BuildSql(this IDbConfig dbConfig, Guid[] ids, out DynamicParameters @params)
        {
            @params = new DynamicParameters();
            var inSelections = dbConfig.CreateParameterResolver().AddArrayParameter(@params, nameof(Person.Id), ids);
            var sql          = dbConfig.CreateSqlBuilder().Select()
                               .OnSchema()
                               .Fields <Person>(x => x.F(item => item.Id))
                               .Fields <Person>(x => x.F(item => item.SequenceNumber))
                               .Fields <Person>(x => x.F(item => item.Alive))
                               .Fields <Person>(x => x.F(item => item.Username))
                               .Fields <Person>(x => x.F(item => item.Password))
                               .Where <Person>(x => x.WP(item => item.Id, inSelections))
                               .Build();

            return(sql);
        }