/// <summary>
        /// Registers the type mappings with the Unity container.
        /// </summary>
        /// <param name="container">The unity container to configure.</param>
        /// <remarks>
        /// There is no need to register concrete types such as controllers or
        /// API controllers (unless you want to change the defaults), as Unity
        /// allows resolving a concrete type even if it was not previously
        /// registered.
        /// </remarks>
        public static void RegisterTypes(IUnityContainer container)
        {
            // without DbContextFactory
            container.RegisterType <DbContext, OrderContext>(new TransientLifetimeManager());
            container.RegisterType <IOrderRepository, OrderRepository>(new TransientLifetimeManager());

            // with DbContextFactory
            container.AddDbContextFactory <OrderContext>();
            container.RegisterType <IOrderRepository, OrderRepositoryWithFactory>();
        }
Esempio n. 2
0
        /// <summary>
        /// Registers the type mappings with the Unity container.
        /// </summary>
        /// <param name="container">The unity container to configure.</param>
        /// <remarks>
        /// There is no need to register concrete types such as controllers or
        /// API controllers (unless you want to change the defaults), as Unity
        /// allows resolving a concrete type even if it was not previously
        /// registered.
        /// </remarks>
        public static void RegisterTypes(IUnityContainer container)
        {
            // NOTE: To load from web.config uncomment the line below.
            // Make sure to add a Unity.Configuration to the using statements.
            // container.LoadConfiguration();

            // without DbContextFactory
            container.RegisterType <DbContext, OrderContext>(new TransientLifetimeManager());
            container.RegisterType <IOrderRepository, OrderRepository>("NoFactory", new PerRequestLifetimeManager());

            // with DbContextFactory
            container.AddDbContextFactory <OrderContext>();
            container.RegisterType <IOrderRepository, OrderRepositoryWithFactory>("WithFactory", new PerRequestLifetimeManager());
        }