WCF-Dienst, der einen anderen Dienst zurückgibt (Servicefabrik?)

Wir verwenden WCF für die Kommunikation zwischen einer Client- und einer Serveranwendung. Die Client-Anwendung verfügt über viele Funktionen, die eine Kommunikation mit dem Server erfordern. Wir haben uns dafür entschieden, diese in mehreren Klassen zu implementieren (Aufteilung der Verantwortung).

Derzeit erstellen wir für jedes Objekt neue WCF - Endpunkte und Serviceverträge - Fakturierung, Buchhaltung, Inhaltsverwaltung usw. Dies verursacht eine Menge Endpunktkonfigurationen sowohl auf dem Client als auch auf dem Server (mit potenziellen Fehlkonfigurationen beim Übergang in den Test und Produktionsplattformen).

Ich möchte wissen, ob ich einen einzelnen WCF-Endpunkt definieren kann, der mehrere Implementierungen für Servicekontakte liefern kann. Unsere Konfigurationsdateien enthalten dann einen einzelnen Endpunkt (zur Service Factory) und ich kann verschiedene Services anfordern, indem ich die Schnittstelle des Service spezifiziere, an dem ich interessiert bin.

z.B.

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);
            }

Der Anhaltspunkt ist eine einzelne Endpunktkonfiguration pro Client / Server-Paar anstelle einer Endpunktkonfiguration pro Servicekontakt, den ich zur Verfügung stellen möchte.

Ist das möglich?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage