Exemplo n.º 1
0
        /// <summary>
        /// Integrates Unity when the application starts.
        /// </summary>
        public static void Start()
        {
            // Use UnityHierarchicalDependencyResolver if you want to use
            // a new child container for each IHttpController resolution.
            // var resolver = new UnityHierarchicalDependencyResolver(UnityConfig.Container);

            //var resolver = new UnityDependencyResolver(UnityConfig.container);
            var resolver = new Unity.WebApi.UnityDependencyResolver(UnityConfig.container);

            GlobalConfiguration.Configuration.DependencyResolver = resolver;
        }
Exemplo n.º 2
0
        public static void Initialize(HttpConfiguration config)
        {
            //Get unity container instance with configured type mappings
            var container = GetConfiguredContainer();

            //Configure MVC dependency resolver
            var mvcDependencyResolver = new Unity.Mvc3.UnityDependencyResolver(container);
            DependencyResolver.SetResolver(mvcDependencyResolver);

            //Configure WebApi dependency resolver
            var apiDependencyResolver = new Unity.WebApi.UnityDependencyResolver(container);
            config.DependencyResolver = apiDependencyResolver;
        }
Exemplo n.º 3
0
        public static IUnityContainer Initialize()
        {
            var container = new UnityContainer();

            //TODO: Load these values from configuration.
            var baseUri = new Uri("http://localhost/");
            var lockBaseUri = new Uri("http://localhost/system/lock/");

            container.RegisterType<Valley.IResourceManager, Valley.Storage.ResourceManager>(new ContainerControlledLifetimeManager(), new InjectionConstructor(baseUri));
            container.RegisterType<Valley.ILockManager, Valley.Storage.LockManager>(new ContainerControlledLifetimeManager(), new InjectionConstructor(lockBaseUri));
            container.RegisterType<Valley.IHttpActionPolicyEvidenceProvider, MockEvidenceProvider>(new ContainerControlledLifetimeManager());
            container.RegisterType<Valley.IHttpActionPolicyEnforcer, MockPolicyEnforcer>(new ContainerControlledLifetimeManager());

            container.AddNewExtension<Valley.UnityExtension>();

            var resolver = new Unity.WebApi.UnityDependencyResolver(container);
            GlobalConfiguration.Configuration.DependencyResolver = resolver;

            var locator = new UnityServiceLocator(container);
            ServiceLocator.SetLocatorProvider(() => locator);

            return container;
        }