Stiamo utilizzando WCF per la comunicazione tra un client e un'applicazione server. L'applicazione client ha molte funzionalità che richiedono la comunicazione al server -Servizio WCF che restituisce un altro servizio (fabbrica di servizi?)
Per il momento, stiamo creando nuovi endpoint WCF e contratti di servizio per ciascun oggetto - Fatturazione , Contabilità, Gestione dei contenuti, ecc. Questo causa un sacco di configurazione degli endpoint sia sul client che sul server (con potenziali problemi di errata configurazione durante lo spostamento nelle piattaforme di test e di produzione).
Vorrei sapere se è possibile definire un singolo endpoint WCF in grado di fornire più implementazioni di contatti di servizio. I nostri file di configurazione conterranno quindi un singolo endpoint (per la fabbrica di servizi) e posso richiedere servizi diversi specificando l'interfaccia del servizio a cui sono interessato.
ad es.
using (IServiceClientFactory serviceClientFactory = new RealProxyServiceClientFactory())
{
// This is normal WCF proxy object creation.
IServiceFactory serviceFactory = serviceClientFactory.CreateInstance<IServiceFactory>("");
// This is what we would like to do
IInvoiceService invoiceService = serviceFactory.getService(typeof(IInvoiceService));
invoiceService.executeOperation(data);
}
L'indizio di essere una singola configurazione endpoint per coppia di client/server, invece di una configurazione dell'endpoint per contattare il servizio mi piacerebbe mettere a disposizione.
È possibile?
Grazie per la risposta.La serializzazione del servizio non è una soluzione, i metodi sul servizio devono essere gestiti sul server. I parametri devono essere serializzabili, ma il metodo stesso deve essere eseguito sul server. Ho trovato un documento su ServiceContracts con un SessionMode che sto provando ora. – Thies
Non ho mai suggerito di serializzare un servizio. La serializzazione Xml è ciò che rende il WCF funzionante. È responsabile di prendere i tuoi oggetti e tradurli in Xml e viceversa. L'intero punto della mia risposta è quello di spiegare a voi che avvolgere le vostre richieste di servizio e le risposte potrebbe essere una soluzione al vostro problema. –