Exemple #1
0
        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);
        }