|
|
@ -287,8 +287,23 @@ public static class ServiceCollectionExtensions
|
|
|
|
return services;
|
|
|
|
return services;
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var host = configuration[MongoDbOptions.MongoHost] ?? mongoDbOptions.Host;
|
|
|
|
|
|
|
|
ArgumentException.ThrowIfNullOrEmpty(host);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var user = configuration[MongoDbOptions.MongoUser] ?? mongoDbOptions.User;
|
|
|
|
|
|
|
|
ArgumentException.ThrowIfNullOrEmpty(user);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var password = configuration[MongoDbOptions.MongoPassword] ?? mongoDbOptions.Password;
|
|
|
|
|
|
|
|
ArgumentException.ThrowIfNullOrEmpty(password);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var port = configuration[MongoDbOptions.MongoPort] ?? mongoDbOptions.Port;
|
|
|
|
|
|
|
|
ArgumentException.ThrowIfNullOrEmpty(port);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var database = configuration[MongoDbOptions.MongoDatabase] ?? mongoDbOptions.Database;
|
|
|
|
|
|
|
|
ArgumentException.ThrowIfNullOrEmpty(database);
|
|
|
|
|
|
|
|
var connectionString = $"mongodb://{user}:{password}@{host}:{port}/{database}";
|
|
|
|
services.TryAddSingleton<IMongoDatabase>(_ =>
|
|
|
|
services.TryAddSingleton<IMongoDatabase>(_ =>
|
|
|
|
new MongoClient(mongoDbOptions.ConnectionString)
|
|
|
|
new MongoClient(connectionString)
|
|
|
|
.GetDatabase(mongoDbOptions.Database));
|
|
|
|
.GetDatabase(mongoDbOptions.Database));
|
|
|
|
services.TryAddScoped(typeof(IMongoRepositoryBase<,>), typeof(MongoRepositoryBase<,>));
|
|
|
|
services.TryAddScoped(typeof(IMongoRepositoryBase<,>), typeof(MongoRepositoryBase<,>));
|
|
|
|
return services;
|
|
|
|
return services;
|
|
|
|