Пример #1
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddControllers();
            var dbSetting = new MongoClientOptions();

            Configuration.GetSection(nameof(MongoClientOptions)).Bind(dbSetting);
            IOC ioc = new IOC();

            ioc.RegisterServices(services, dbSetting);
        }
Пример #2
0
 public void RegisterServices(IServiceCollection services, MongoClientOptions mongoSetting)
 {
     services.AddSingleton <MongoDatabase>(sp =>
     {
         return(new MongoDatabase(new MongoDB.Driver.MongoClientSettings
         {
             Server = new MongoDB.Driver.MongoServerAddress(mongoSetting.Host, mongoSetting.Port),
             ApplicationName = mongoSetting.DatabaseName
         }));
     });
     services.AddScoped(typeof(IGenericRepostory <>), typeof(GenericRepostory <>));
     services.AddScoped <IStoreService, StoreService>();
     services.AddScoped <IMenuService, MenuService>();
     services.AddScoped <InitData>();
 }
        public LibraryDbContext(MongoClientOptions Options, ILogger <LibraryDbContext> logger)
        {
            MongoClientSettings settings = MongoClientSettings.FromUrl(new MongoUrl(Options.ConnectionString));
            //settings.SslSettings = new SslSettings() { EnabledSslProtocols = System.Security.Authentication.SslProtocols.Tls12 };

            var client = new MongoClient(settings);

            MongoClient = client;
            Database    = client.GetDatabase(Options.DataBaseName);
            this.logger = logger;
            if (Database is null)
            {
                logger.LogInformation("Failed to connect to mongo database");
            }
            else
            {
                logger.LogInformation("Mongo connection established from docker");
            }
        }