Beispiel #1
0
        public void OverridesAreUsedInArrayElements()
        {
            using (IUnityContainer container = new UnityContainer())
            {
                var overrideInstance = new ClassWithPerResolveLifetime();
                container.RegisterType <ClassWithDependency>("instance1");
                container.RegisterType <ClassWithDependency>("instance2");

                var instance =
                    container.Resolve <ClassWithDependencyOnArray>(new DependencyOverride <ClassWithPerResolveLifetime>(overrideInstance).OnType <ClassWithDependency>());

                Assert.AreEqual(2, instance.Elements.Length);
                Assert.AreSame(overrideInstance, instance.Elements[0].Dependency);
                Assert.AreSame(overrideInstance, instance.Elements[1].Dependency);
            }
        }
Beispiel #2
0
 public ClassWithDependency(ClassWithPerResolveLifetime dependency)
 {
     this.Dependency = dependency;
 }