public void SingletonsWithoutRegistering() { IUnityContainer uc = new UnityContainer() .RegisterType <MyFirstSingetonclass>(new ContainerControlledLifetimeManager()); MyFirstSingetonclass firstObj = uc.Resolve <MyFirstSingetonclass>(); MyFirstSingetonclass secondObj = uc.Resolve <MyFirstSingetonclass>(); Assert.AreSame(firstObj, secondObj); }
public void RegisterInstanceSingletonsChckwithScott() { MyFirstSingetonclass first = new MyFirstSingetonclass(); IUnityContainer uc = new UnityContainer() .RegisterInstance <IMySingeltonInterface>("first", first) .RegisterType <IMySingeltonInterface, MySecondSingetonclass>(new ContainerControlledLifetimeManager()); object firstObj = uc.Resolve <IMySingeltonInterface>(); object secondObj = uc.Resolve <IMySingeltonInterface>(); Assert.IsInstanceOfType(firstObj, typeof(MySecondSingetonclass)); }
public void RegisterInstanceSingletonsChckwithScott() { MyFirstSingetonclass first = new MyFirstSingetonclass(); IUnityContainer uc = new UnityContainer() .RegisterInstance<IMySingeltonInterface>("first", first) .RegisterType<IMySingeltonInterface, MySecondSingetonclass>(new ContainerControlledLifetimeManager()); object firstObj = uc.Resolve<IMySingeltonInterface>(); object secondObj = uc.Resolve<IMySingeltonInterface>(); Assert.IsInstanceOfType(firstObj, typeof(MySecondSingetonclass)); }