Mentre sto imparando a utilizzare i servizi WCF, sto costantemente incontrando tutorial su Internet che menzionano l'utilizzo di un ServiceHost
quando si utilizza un servizio WCF.WCF: Che cos'è un servizio di assistenza?
Che cosa è esattamente questo ServiceHost
?
Nel mio progetto in corso si sta usando un servizio WCF e avere un riferimento ad esso dal mio app e ogni volta che voglio consumare dalla mia app ho solo istanziare la sua ServiceClient
come tale:
new MusicRepo_DBAccess_ServiceClient(new InstanceContext(instanceContext), customBinding, endpointAddress);
e quindi accedere i miei metodi web (s) OperationContract
da tale istanza (ovviamente aprirlo prima di consumare il metodo e chiudendola poi con Open
e Close
)
mio Il servizio WCF è host nel mio IIS e accedo semplicemente allo .svc
dalla mia app per creare un'istanza dello ServiceClient
.
Quindi perché e dove è utilizzato lo ServiceHost
?
Quasi corretta. - anche IIS e WAS useranno un ServiceHost per ospitare il tuo servizio WCF: lo creano e lo abbattono automagicamente alle tue spalle. –
Sì, stavo solo cercando di descrivere quando vedresti un ServiceHost nel tuo codice. IIS/WAS ServiceHost non è generalmente accessibile direttamente dallo sviluppatore. –
Sì, è vero - il ServiceHost è quasi invisibile nello scenario IIS/WAS :) –