Beispiel #1
0
        public static Container Initialize()
        {
            var container = new Container();

            container.Options.DefaultScopedLifestyle = new ThreadScopedLifestyle();

            container.Register <IConfiguration, Configuration>();

            if (AppSettingsProvider.GetUsePulseEmulator())
            {
                container.Register <IPulseService, PulseServiceEmulator>();
            }
            else
            {
                container.Register <IPulseService, PulseService.PulseService>();
            }

            container.RegisterSingleton <IReactiveLoader, ReactiveLoader>();

            DbComponentRegistration.RegisterDb(container);
            RepositoryComponentRegistration.RegisterRepositories(container);
            ServicesComponentRegistrations.RegisterServices(container);

            container.Verify();

            return(container);
        }
Beispiel #2
0
        public static Container Initialize()
        {
            var container = new Container();

            container.Options.DefaultScopedLifestyle = new AsyncScopedLifestyle();

            container.RegisterSingleton <IConfiguration>(() => new Configuration());
            DbComponentRegistration.RegisterDb(container);
            RepositoryComponentRegistration.RegisterRepositories(container);
            ServicesComponentRegistrations.RegisterServices(container);
            container.RegisterWebApiControllers(GlobalConfiguration.Configuration);

            container.Verify();

            GlobalConfiguration.Configuration.DependencyResolver = new SimpleInjectorWebApiDependencyResolver(container);
            return(container);
        }