public async Task <SpecializationGroup> Create(SpecializationGroup g) { logger.LogInformation("Creating SpecializationGroup:{@SpecializationGroup}", g); using (var cn = new SqlConnection(opts.ConnectionString)) { await cn.OpenAsync(); try { var grid = await cn.QueryMultipleAsync( Sql.Create, new { sqlSetId = g.SqlSetId, uiDefaultText = g.UiDefaultText, specs = SpecializationTable.From(g), user = user.UUID }, commandType : CommandType.StoredProcedure, commandTimeout : opts.DefaultTimeout); return(HydratedSpecializationGroupReader.ReadSingle(grid)); } catch (SqlException se) { logger.LogError("Could not create SpecializationGroup. SpecializationGroup:{@SpecializationGroup} Code:{Code} Error:{Error}", g, se.ErrorCode, se.Message); se.MapThrow(); throw; } } }
public async Task <IEnumerable <SpecializationGroup> > Get() { logger.LogInformation("Getting SpecializationGroups."); using (var cn = new SqlConnection(opts.ConnectionString)) { await cn.OpenAsync(); var grid = await cn.QueryMultipleAsync( Sql.Get, commandType : CommandType.StoredProcedure, commandTimeout : opts.DefaultTimeout ); return(HydratedSpecializationGroupReader.Read(grid)); } }