sto cercando il seguente in Unity:Unità: come specificare di utilizzare un'istanza specifica di un tipo quando si risolve un altro tipo
Ho un tipo con la seguente costruttore
public Type1(Type2 firstDependency, Type3 secondDependency)
Durante la risoluzione Type1
usando Unity, voglio specificare l'istanza specifica per Type2
da iniettare. Questa specifica istanza di Type2
non è registrata nel contenitore. Type3
è registrato nel contenitore e dovrebbe essere risolto come al solito.
Per essere più specifici, considerare Type1
è una classe DocumentViewer
. Type2
è uno specifico Document
. Type3
è un SpellingChecker
.
Voglio essere in grado di risolvere DocumentViewer
per un Document
che è noto solo in fase di esecuzione. È possibile creare più istanze DocumentViewer
per differenza Documents
.
Come posso fare questo?
Mi dispiace, ma non capisco perché non è possibile risolvere un'istanza della vista del documento con il codice indicato in delle risposte di seguito. Cosa significa "un documento è noto solo al runtime"? Se non si conosce il tipo esatto dell'istanza del documento, considerare l'utilizzo di interfacce. – Alexander
Per dirlo in un altro modo: Voglio risolvere un tipo, ma solo lasciare che il contenitore risolva alcune delle dipendenze stesse. Voglio fornire io stesso le altre istanze. –