Domanda

Voglio esporre il mio livello di servizio (che è attualmente scritto come libreria di classi di serie con pocos) per l'esterno così come il consumo interno. I client esterni useranno sopra le API REST di stile, mentre internamente la mia MVC applicazione utilizzerà sopra net.tcp vincolante per migliorare le prestazioni.

Come faccio a fare questo con eleganza? Posso scrivere 2 involucri uno per il riposo con VS2010 Beta 2 è dotato di riposo e altri utilizzando le associazioni standard di WCF.

Posso fare questo in un unico involucro? o meglio solo refactoring miei servizi attuali WCF ed esporre su vari endpoint utilizzando attacchi diversi, come webHttpBinding, WsHttpBinding, ecc.

Saluti,

Ajay

È stato utile?

Soluzione

La vostra biblioteca servizio conterrà solo l'implementazione del servizio - il servizio (e dati) i contratti devono essere nella loro propria assemblea separata "Contratti"

.

La questione di hosting e il protocollo da utilizzare è gestita dal servizio di host - questo può essere IIS o un servizio NT separato o una console app o qualcosa del genere. Questo è il tutto indipendente della classe di servizio e la vostra libreria di servizio.

Quindi sì - si può facilmente creare una libreria di servizi e quindi esporre che il servizio nel corso di un gran numero di endpoint nel vostro ospite del servizio -. Queste due cose devono essere tenuti completamente separati l'uno dall'altro

Altri suggerimenti

Certo si può semplicemente aggiungere più di loro per il file di configurazione o utilizzando il codice.

VS 2010 Beta 2 di caratteristiche resto sono essi stessi costruito sulla cima di WCF, quindi se si desidera utilizzarli si dovrà refactoring il servizio in un servizio WCF in ogni caso. A quel punto, come dicono Dani e marc_s, si può facilmente aggiungere endpoint aggiuntivi al servizio tramite il file di configurazione.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top