コード例 #1
0
        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 ");
        }
コード例 #3
0
        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);
        }