public static async Task Execute( IDbConnection dbConnection, IDbConfigSchemaTargets dbConfigConfig, Person person) { var sql = dbConfigConfig.BuildSql(); var @params = new DynamicParameters(); @params.Add(nameof(Person.PersonId), dbConfigConfig.CreateDatabaseParameterResolver().WithGuidParameterValue(person.PersonId)); @params.Add(nameof(Person.Alive), dbConfigConfig.CreateDatabaseParameterResolver().WithBooleanParameterValue(person.Alive)); @params.Add(nameof(Person.Username), person.Username); @params.Add(nameof(Person.Password), person.Password); await dbConnection.ExecuteAsync(sql, @params); }
public static Task Execute( IDbConnection dbConnection, IDbConfigSchemaTargets dbConfigConfig, Guid id) { var sql = dbConfigConfig.BuildSql(); var @params = new DynamicParameters(); @params.Add(nameof(Person.PersonId), dbConfigConfig.CreateDatabaseParameterResolver().WithGuidParameterValue(id)); return(dbConnection.ExecuteAsync(sql, @params)); }
private static string BuildSql(this IDbConfigSchemaTargets dbConfigConfig, out DynamicParameters @params) { @params = new DynamicParameters(); @params.Add(nameof(Person.Alive), dbConfigConfig.CreateDatabaseParameterResolver().WithBooleanParameterValue(true)); var sql = dbConfigConfig.CreateSqlBuilder().Select() .OnSchema() .Count() .Fields <Person>(x => x.F(item => item.PersonId)) .Where <Person>(x => x.WP(item => item.Alive)) .Build(); return(sql); }
private static string BuildSql(this IDbConfigSchemaTargets dbConfigConfig) { var parameterResolver = dbConfigConfig.CreateDatabaseParameterResolver(); var sql = dbConfigConfig.CreateSqlBuilder().Insert <Person>() .OnSchema() .Fields(x => x.FP(item => item.PersonId)) .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); }
private static string BuildSql(this IDbConfigSchemaTargets dbConfigConfig, Guid[] ids, out DynamicParameters @params) { @params = new DynamicParameters(); var inSelections = dbConfigConfig.CreateDatabaseParameterResolver().AddArrayParameter(@params, nameof(Person.PersonId), ids); var sql = dbConfigConfig.CreateSqlBuilder().Select() .OnSchema() .Fields <Person>(x => x.F(item => item.PersonId)) .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.PersonId, inSelections)) .Build(); return(sql); }