J'ai rencontré un problème plutôt poilu. Il y a probablement une solution simple à cela mais je ne peux pas le trouver!Constructeur/Setter Injection utilisant IoC dans HttpHandler, est-ce possible?
J'ai un HttpHandler personnalisé que je veux traiter une demande, consigner certaines informations puis entrer les détails dans la base de données. J'utilise NUnit et Castle Windsor.
J'ai donc deux interfaces; un pour enregistrer l'autre pour l'entrée de données, qui sont injectés par le constructeur. J'ai rapidement découvert qu'il n'y a aucun moyen d'appeler le constructeur car le constructeur par défaut sans défaut est toujours appelé à la place.
Alors j'ai pensé que j'utiliserais l'injection de Setter et laisserai Castle windsor le trier. Cela fonctionne réellement comme quand j'utilise container.Resolve<CustomHttpHandler>();
je peux vérifier que l'enregistreur n'est pas nul. (Dans Application_Start in Global.asax.cs)
Le problème est que Castle Windsor peut créer l'instance que l'application http ne l'utilise pas ??? Je pense?? Fondamentalement, la raison principale de cette façon de faire était de pouvoir tester le code de l'enregistreur et du référentiel de données de manière isolée par des tests de simulation et d'unité.
Des idées comment je peux résoudre ce problème?
Merci!
Matt, ce n'est pas cool de changer ta question comme ça parce que tu invalides toutes les réponses existantes et que tu force tout le monde à se mettre à jour. Veuillez annuler votre modification et créer une nouvelle question à la place. –
Salut Mauricio. Désolé, évidemment, je suis nouveau à comment cela fonctionne. Avoir retourné et créé une nouvelle question. Merci! – Matt