Пример #1
0
        public static void Register()
        {
            if (handlers.IsNullOrDefault())
            {
                handlers = new SimpleInjectorEventHandler();
            }

            var container = new Container();

            container.Options.DefaultScopedLifestyle = new ThreadScopedLifestyle();

            var serviceContainer = new SimpleInjectorServiceContainer(container);

            container.RegisterSingleton(() => serviceContainer);
            container.RegisterSingleton <IServiceContainer>(() => serviceContainer);
            ServiceContainer.Register(serviceContainer);

            handlers.OnRegister(new SimpleInjectorEventArgs {
                Container = container
            });

            RegisterGeneralDependencies(container);
            RegisterProviders(container);
            RegisterServices(container);
            RegisterViewModelProcessors(container);
            RegisterViewEngine(container);
            RegisterTasks(container);

            container.Verify();
            Container = container;
        }
Пример #2
0
        public static void Register(Container container)
        {
            var serviceContainer = new SimpleInjectorServiceContainer(container);

            container.RegisterSingleton(typeof(IServiceContainer), () => serviceContainer);
            ServiceContainer.Register(serviceContainer);

            RegisterGeneralDependecies(container);
            RegisterViewModelProcessors(container);
            RegisterProviders(container);
            RegisterServices(container);
            OverrideViewModelProcessors(container);
            RegisterViewEngine(container);
        }