Avec les pages ASP.NET MVC normales, le référentiel est transmis au constructeur du contrôle. Ensuite, les tests peuvent instancier le contrôleur passant dans un faux référentiel. Comment puis-je faire cela avec les services Web? Le problème que je vois est que nous n'avons pas l'équivalent de ControllerBuilder.SetControllerFactory. Quelles sont les meilleures pratiques pour que mon infrastructure IoC (Castle) instancie mon service Web avec l'implémentation correcte du référentiel?Comment utiliser l'injection de dépendance et le modèle de référentiel avec les services Web ASP.NET?
Je pensais qu'il pourrait y avoir un moyen d'étendre HttpHandler et de changer la façon dont le service Web est réellement instancié. Je crois que c'est ainsi que le cadre MVC le fait.
Quelle technologie utilisez-vous pour mettre en œuvre vos services Web? Services Web ASP.NET ou Windows Communication Foundation? –
Services Web ASP.NET. Cependant, après avoir lu la réponse de jrista, je pense que cela pourrait valoir la peine de se pencher sur WCF si je veux vraiment injecter des dépendances. Je considère juste avoir deux constructeurs - un qui prend le référentiel en tant que paramètres (les tests appelleront celui-ci) et un par défaut qui dur codera: ceci (nouvel IRepository) et sera appelé par le cadre ASP.NET. –