private static IServiceCollection ConfigureServices(IServiceCollection services) { services.AddScoped <IStartup, Startup>(); services.AddLogging(); services.AddApplicationServices(); services.AddDeviceMessagesProcessor(_configuration["CloudGen:IoTHubParameters:PrimaryConnectionString"]); var mongoDbParameters = new MongoDbParameters(); _configuration.GetSection("CloudGen:MongoDbParameters").Bind(mongoDbParameters); services.AddMongoDb(mongoDbParameters); return(services); }
public static IServiceCollection AddMongoDb(this IServiceCollection services, MongoDbParameters mongoDbParameter) { services.AddSingleton <IMongoClient>(provider => new MongoClient(mongoDbParameter.ConnectionString)); services.AddScoped <IMongoDatabase>(provider => provider.GetService <IMongoClient>().GetDatabase(mongoDbParameter.DatabaseName)); services.AddScoped <IPersister, Persister>(); return(services); }