private void BuilAllDependency() { var builder = new ContainerBuilder(); // get appsettings var appSettings = new AppSettings(); var appSettings2 = new DbAppSettings(); Configuration.GetSection(nameof(AppSettings)).Bind(appSettings); Configuration.GetSection(nameof(AppSettings)).Bind(appSettings2); builder.RegisterInstance(appSettings).As <AppSettings>(); builder.RegisterInstance(appSettings2).As <DbAppSettings>(); builder.RegisterType <MongoCURD>().As <IMongoCURD>(); builder.RegisterType <MongoUser>().As <IMongoUser>(); builder.RegisterType <JwtAuthManager>().As <IJwtAuthManager>(); //builder.Register((c, p) => new MongoCURD(p.Named<string>("database"), p.Named<string>("connectionString"))).As<IMongoCURD>(); //builder.Register((c, p) => new MongoUser(p.Named<string>("connectionString"), p.Named<string>("dbName"))).As<IMongoUser>(); container = builder.Build(); }
public MongoCURD(DbAppSettings appSettings) { MongoClient client = new MongoClient(appSettings.ConnectionString); db = client.GetDatabase(appSettings.DbName); }