Derzeit arbeite ich an einem ERP-Projekt mit Entity FrameWork und WCF auf der Serverseite und WPF auf der Clientseite. Da es sich um ein großes Projekt handelt, haben wir viele Entitäten. Bisher haben wir Serviceverträge für jede Entität erstellt und mit mehreren Endpunkten versehen. Das Problem ist, dass wir für jeden Service eine Servicereferenz hinzufügen mussten und uns schwierig fühlen um diese Webdienste zu verwalten.

1.Ist das ein richtiger Weg? Wenn ja, 2. Gibt es eine Möglichkeit, diese Webdienste (in Klassen oder Ordnern) zuzuweisen?

Danke im Voraus.

0
Mubarack Ali 23 Dez. 2015 im 15:47

3 Antworten

Beste Antwort

Sie möchten die Proxy-Klassen nicht weiter im Client generieren.

Verschieben Sie einfach die POCO-Klassen und -Verträge in eine einzelne Assembly, auf die Sie auf dem Server und im Client verweisen können. Erstellen Sie dann mit ChannelFactory die erforderlichen Kanäle im Client.

ChannelFactory (TChannel)

0
Janne Matikainen 3 März 2016 im 06:30

Wenn Sie mit vielen Diensten arbeiten, können Sie einen Routing-Dienst erstellen, der sich wie eine Fassade verhält. Sobald Sie den Routing-Service definiert haben, werden alle Anforderungen an den Routing-Service gesendet und dann anhand einiger Kriterien an einen bestimmten Service gesendet. Sie haben es nur mit einem Dienst zu tun. Wenn also Änderungen an Unterdiensten auftreten, z. B. die Adresse des Endpunkts geändert wird, muss eine solche Änderung nur im Routingdienst berücksichtigt werden.

0
Maximus 25 Dez. 2015 im 22:23

Endlich habe ich gelernt, wie man mit mehreren Diensten umgeht

Ich denke darüber nach, svcutil.exe zu verwenden, um Proxy-Klassen zu erstellen. Damit können wir diese Klassen in Ordnern anordnen und mehr Kontrolle über Proxys erhalten

0
Mubarack Ali 3 März 2016 im 06:23