protected override void Load(ContainerBuilder builder) { base.Load(builder); // builder.RegisterType<Class>() // .As<Interface>(); builder.Register(context => new MapperConfiguration(cfg => { cfg.AddProfile <AutoMapperProfile>(); } )).AsSelf().SingleInstance(); builder.Register(c => { var context = c.Resolve <IComponentContext>(); var config = context.Resolve <MapperConfiguration>(); return(config.CreateMapper(context.Resolve)); }) .As <IMapper>() .InstancePerLifetimeScope(); var env = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"); var resolver = new EnvironmentJsonResolver <Config>("appsettings.json", $"appsettings.{env}.json"); var module = new ConfigurationModule(resolver); builder.RegisterModule(module); }
public void ResolvesConfigurationWhenEnvironmentFilenameNotFoundTest() { var sut = new EnvironmentJsonResolver <Config>("localsettings.json"); var actual = sut.Resolve().As <Config>(); actual.Storage.Database.Should().NotStartWith("local "); actual.Storage.BlobStorage.Should().StartWith("local "); }
protected override void Load(ContainerBuilder builder) { base.Load(builder); builder.RegisterType <Telegram>() .As <ISendDataTelegram>() .WithMetadata("sendTo", "Telegram"); builder.RegisterType <Email>() .As <ISendDataEmail>() .WithMetadata("sendTo", "Email"); builder.RegisterType <Amo>() .As <ISendDataAmo>() .WithMetadata("sendTo", "Email"); builder.RegisterType <Switch>() .As <ISwitch>(); builder.RegisterType <UserInfo>() .As <IUserInfo>(); builder.RegisterType <Request>() .As <ISenderData>(); builder.Register(context => new MapperConfiguration(cfg => { cfg.AddProfile <AutoMapperProfile>(); } )).AsSelf().SingleInstance(); builder.Register(c => { var context = c.Resolve <IComponentContext>(); var config = context.Resolve <MapperConfiguration>(); return(config.CreateMapper(context.Resolve)); }) .As <IMapper>() .InstancePerLifetimeScope(); var env = Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT"); var resolver = new EnvironmentJsonResolver <Config>("appsettings.json", $"appsettings.{env}.json"); var module = new ConfigurationModule(resolver); builder.RegisterModule(module); }