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;
}