Castle.MicroKernel , ArrayResolver ListResolver ( Castle.MicroKernel.Resolvers.SpecializedResolvers). , () Hammet, , , , .
, , : http://www.panteravb.com/downloads/WindsorCon.zip
ArrayResolver, ListResolver, , , , :
public class MyService
{
private IEnumerable<IRule> _rules;
public MyService(IList<IRule> rules)
{
_rules = rules;
}
}
:
private IWindsorContainer _container;
private void InitializeIoc()
{
_container = new WindsorContainer();
_container.Kernel.Resolver.AddSubResolver(new ListResolver(_container.Kernel));
_container.Register(Component.For<IRule>().ImplementedBy<Rule1>());
_container.Register(Component.For<IRule>().ImplementedBy<Rule2>());
_container.Register(Component.For<MyService>());
}