Voir ici et ici pour une jolie technique approfondie comparaison de plusieurs conteneurs IoC, bien que quelque peu obsolète maintenant (ils sont de avant de Windsor 2.0)
Cependant, je ne pense pas qu'il y a vraiment de tout essentiel des fonctionnalités qui Windsor offre et d'autres contenants ne le font pas. Windsor, StructureMap, Spring.NET ont été autour depuis plusieurs années et ont été utilisés dans de nombreux projets au cours de ces années, ils sont donc très mature maintenant. Nouveaux conteneurs, comme Autofac, l'Unité, Ninject et SimpleInjector appuyer sur l'expérience précédente de sorte qu'ils ne manquent pas de ces caractéristiques essentielles.
Maintenant, le plus subjective partie de la réponse: j'aime à penser que Windsor est un beau mélange de convivialité, de l'extensibilité et de modules d'intégration.
Convivialité: par exemple, vous pouvez utiliser XML et/ou le code d'enregistrement (il a aussi une API fluent comme la plupart des contenants de nos jours).
Extensibilité: Beaucoup de points d'extension que vous pouvez utiliser pour personnaliser ou remplacer à peu près de tout comportement par défaut.
Intégration: Windsor dispose de nombreux équipements (modules) qui permettent une intégration facile avec d'autres frameworks/librairies. D'autres intégrations inclure ASP.NET MVC, MonoRail, Workflow Foundation, NServiceBus, MassTransit, Rhino Service de Bus, Quartz.Net, SolrNet, SolrSharp, Windows Services de Télécopie.
Cette série d'articles couvre beaucoup de subtilités et de points d'extension de Windsor.
Notez que je ne suis pas en disant que d'autres contenants n'offrent pas les mêmes choses! Même si vous avez choisi l'un d'entre eux et, plus tard, vous avez découvert il en manque une certaine intégration, il n'est généralement pas difficile de coder vous-même.
Bottom line: je ne pense pas que vous pouvez vous tromper avec l'un des principaux Cio conteneurs, aussi longtemps que vous la structure de votre code correctement (par exemple, éviter les le service localisateur anti-modèle).