Ejemplo n.º 1
0
        public void CanSetDefaultLifetimeManagerToRequestLifetime()
        {
            var lifetime = new RequestLifetime();
            iocContainer.UsesDefaultLifetimeManagerOf(lifetime);

            Verify.That(iocContainer.DefaultLifetimeManager).IsTheSameObjectAs(lifetime);
        }
Ejemplo n.º 2
0
        void SettingTheDefaultContainerLifetime()
        {
            // create the container.  Only done once in Application_Start
            IocContainer iocContainer = new IocContainer();

            // create a lifetime manager to use as default
            ILifetimeManager lifetimeManager = new LifetimeManagers.RequestLifetime();

            // set the default lifetime manager
            iocContainer.UsesDefaultLifetimeManagerOf(lifetimeManager);
        }
Ejemplo n.º 3
0
        public void RequestLifetimeManagerReturnsSameObjectForSameRequest()
        {
            var context1 = new FakeHttpContext("Http://fakeUrl1.com");
            var context2 = new FakeHttpContext("Http://fakeUrl2.com");

            var requestltm = new RequestLifetime();

            using (var container = new IocContainer())
            {
                container.Register<IFoo>(c => new Foo1()).WithLifetimeManager(requestltm);
                RequestLifetime.SetContext(context1);
                var result1 = container.Resolve<IFoo>();
                var result2 = container.Resolve<IFoo>();
                RequestLifetime.SetContext(context2);
                var result3 = container.Resolve<IFoo>();
                Verify.That(result3).IsNotNull();
                Verify.That(result2).IsNotNull();
                Verify.That(result1).IsNotNull().IsTheSameObjectAs(result2).IsNotTheSameObjectAs(result3);
            }
        }
Ejemplo n.º 4
0
 void context_EndRequest(object sender, EventArgs e)
 {
     RequestLifetime.Disposer(sender, e);
 }