public IMongoClient Build(MongoConfiguration mongoConfig) { var mongoTimeout = DetermineTimeout(mongoConfig); var settings = MongoClientSettings.FromUrl(mongoConfig.MongoUrl); settings.ConnectTimeout = mongoTimeout; settings.SocketTimeout = mongoTimeout; settings.ServerSelectionTimeout = mongoTimeout; return(new MongoClient(settings)); }
public MongoDatabaseProvider(IOptions <MongoConfiguration> mongoConfig, IMongoClientBuilder mongoClientBuilder) { _mongoConfig = mongoConfig.Value; _mongoClientBuilder = mongoClientBuilder; }
private TimeSpan DetermineTimeout(MongoConfiguration configuration) { return(configuration.Timeout == null ? _defaultTimeout : TimeSpan.FromMilliseconds(configuration.Timeout.Value)); }
public MongoCollectionProvider(IMongoDatabaseProvider mongoDatabaseProvider, IOptions <MongoConfiguration> mongoConfig) { _mongoDatabaseProvider = mongoDatabaseProvider; _mongoConfig = mongoConfig.Value; }