public CosmosConfigurationProvider(CosmosConfigurationSource source, string slot, Container container) { _ids = new Dictionary <string, string>(StringComparer.OrdinalIgnoreCase); _source = source; var optionsMonitor = new OptionsMonitorShim <CosmosStorageOptions>(source.Options); _repository = new CosmosRepository(slot, container, optionsMonitor, null); }
public static IConfigurationBuilder AddCosmosConfigurationProvider(this IConfigurationBuilder builder, Action <CosmosStorageOptions> configureDatabase, Action <SaveConfigurationOptions> configureOptions = null, bool reloadOnChange = false, IConfiguration configSeed = null) { var dbConfig = new CosmosStorageOptions(); configureDatabase?.Invoke(dbConfig); var saveConfig = new SaveConfigurationOptions(); configureOptions?.Invoke(saveConfig); var source = new CosmosConfigurationSource(dbConfig, saveConfig, configSeed) { ReloadOnChange = reloadOnChange }; builder.Add(source); return(builder); }