using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; using System; using System.Collections.Generic; using System.Text; using TEAMModelOS.SDK.DI; namespace TEAMModelOS.SDK.DI.Multiple { public static class MultipleAzureStorageFactoryExtensions { /// /// Storage依赖注入 /// /// /// /// /// public static IServiceCollection AddMultipleAzureStorage(this IServiceCollection services, List<(string name, string connectionString)> connectionInfo) { if (services == null) throw new ArgumentNullException(nameof(services)); if (connectionInfo == null) throw new ArgumentNullException(nameof(connectionInfo)); services.TryAddSingleton(); connectionInfo.ForEach(connection => { services.Configure(connection.name, o => { o.Name = connection.name; o.StorageAccountConnectionString = connection.connectionString; }); }); return services; } } }