public static void Get( Catalog catalog, DbConnection connection, IMetadataScriptFactory metadataScriptFactory) { using (var command = connection.CreateCommand()) { command.CommandText = metadataScriptFactory.Schemas(catalog.ObjectName); using (var reader = command.ExecuteReader()) { if (!reader.HasRows) { reader.Close(); return; } Read(catalog, reader); reader.Close(); } } }
public static async Task GetAsync( Catalog catalog, DbConnection connection, IMetadataScriptFactory metadataScriptFactory, CancellationToken cancellationToken = default(CancellationToken)) { cancellationToken.ThrowIfCancellationRequested(); using (var command = connection.CreateCommand()) { command.CommandText = metadataScriptFactory.Schemas(catalog.ObjectName); using (var reader = await command.ExecuteReaderAsync(cancellationToken)) { if (!reader.HasRows) { reader.Close(); return; } await ReadAsync(catalog, reader, cancellationToken); reader.Close(); } } }