J'ai une classe "Adapter" qui enveloppe un objet appelé "X_Session". Cet adpater attend un ILogger et ICacheManager. La façon dont j'y ai pensé est de définir cette classe avec Unity et de la laisser résoudre les deux interfaces qui sont entrées en tant qu'entrées du constructeur.Paramètres UnityContainer et constructeur
Qu'en est-il de l'objet X_Session? Il n'est pas enregistré par Unity, car je dois le créer moi-même car son constructeur nécessite des paramètres d'entrée que je rassemble à partir de QueryString. Est-ce que je résous la classe Adpater puis définissez l'objet X_Session? Autre meilleure façon?
Merci
Merci Onof :). Le problème est que l'objet X_Session n'a pas d'interface. Il appartient à une API existante que j'utilise. Donc, peut-être, comme notre collègue l'a suggéré ci-dessous, j'inscris l'adaptateur avec Unity avec l'entrée X_Session dans le constructeur et j'injecte manuellement le X_Session. Qu'est-ce que tu penses? – Bill
Devinez j'ai mal compris votre point! Je ne laisse pas Unity savoir quoi que ce soit sur ISession. Cela ne m'apporte qu'une instance de IAdpaterFactory et laisse l'application injecter un objet ISession ou Session dans le constructeur Adpater. Qu'en est-il de l'Adpater, est-ce que je n'ai pas besoin de l'enregistrer dans Unity? Et pourquoi? – Bill
Vous ne pouvez pas enregistrer l'adaptateur dans Unity si l'objet de session doit être construit et que Unity n'en sait rien. Vous avez besoin de l'usine car l'adaptateur a besoin d'une entrée non résolvable par Unity. – onof