public CosmosDbClientBuilder UseDatabase(string databaseId) { _dbconfig = _dbconfig != null ? _dbconfig = new CosmosDbDatabaseConfig(databaseId, _dbconfig.SharedThroughput) : _dbconfig = new CosmosDbDatabaseConfig(databaseId, null); return(this); }
public CosmosDbClientBuilder WithSharedThroughput(int throughput) { _dbconfig = _dbconfig != null ? new CosmosDbDatabaseConfig(_dbconfig.DatabaseId, throughput) : new CosmosDbDatabaseConfig(null, throughput); return(this); }
public CosmosDbClient( IServiceProvider serviceProvider, CosmosDbConnectionSettings connectionSettings, CosmosDbDatabaseConfig dbDatabaseConfig, IEnumerable <ContainerDefinition> containerDefinitions) { this.ServiceProvider = serviceProvider; IEnumerable <ContainerDefinition> definitions = containerDefinitions as ContainerDefinition[] ?? containerDefinitions.ToArray(); _containerDefinitions = definitions.ToArray(); _sdkClient = new CosmosClient( connectionSettings.EndPoint, connectionSettings.AuthKey, new CosmosClientOptions() { ConnectionMode = ConnectionMode.Direct, SerializerOptions = new CosmosSerializationOptions() { IgnoreNullValues = true, PropertyNamingPolicy = CosmosPropertyNamingPolicy.CamelCase } }); _lazyDatabase = new AsyncLazy <Database>(async() => { DatabaseResponse resp = await _sdkClient.CreateDatabaseIfNotExistsAsync(dbDatabaseConfig.DatabaseId, dbDatabaseConfig.SharedThroughput); foreach (ContainerDefinition containerDefinition in definitions) { await Internal_EnsureContainerExists(resp.Database, containerDefinition); } return(resp.Database); }); }
public CosmosDbClientBuilder ReadConfiguration(IConfiguration config) { _connectionSettings = new CosmosDbConnectionSettings(config); _dbconfig = new CosmosDbDatabaseConfig(config); return(this); }