public async Task <IList <T> > LoadListAsync <T>(String source, String command, System.Object prms) where T : class { using var token = _profiler.Start(command); var listLoader = new ListLoader <T>(); using var cnn = await GetConnectionAsync(source); using var cmd = cnn.CreateCommandSP(command, CommandTimeout); SqlExtensions.SetFromDynamic(cmd.Parameters, prms); using (var rdr = await cmd.ExecuteReaderAsync()) { listLoader.ProcessFields(rdr); while (await rdr.ReadAsync()) { listLoader.ProcessRecord(rdr); } } return(listLoader.Result); }
public IList <T> LoadList <T>(String source, String command, Object prms) where T : class { using (var token = _profiler.Start(command)) { var listLoader = new ListLoader <T>(); using (var cnn = GetConnection(source)) { using (var cmd = cnn.CreateCommandSP(command)) { SqlExtensions.SetFromDynamic(cmd.Parameters, prms); using (var rdr = cmd.ExecuteReader()) { listLoader.ProcessFields(rdr); while (rdr.Read()) { listLoader.ProcessRecord(rdr); } } } } return(listLoader.Result); } }