Report abuse

static IWindsorContainer CreateWindsorContainer() {
            WindsorContainer container = new WindsorContainer();

            container
                .Register(Component.For<IMessageService>()
                    .ImplementedBy<DefaultMessageService>());

            container    
                .Register(AllTypes.Of<ISimpleMessageService>()
                    .FromAssemblyNamed(typeof(DefaultMvcApplication).Assembly.FullName)
                    .WithService
                    .FromInterface(typeof(ISimpleMessageService))
                    .Configure(c => c.LifeStyle.Transient));

            container.Kernel.Resolver.AddSubResolver(new ArrayResolver(container.Kernel));
            return container;
        }