Laden...

[WCF] Mehrere Dienste pro Host

Erstellt von wdb.lizardking vor 16 Jahren Letzter Beitrag vor 16 Jahren 1.246 Views
wdb.lizardking Themenstarter:in
100 Beiträge seit 2006
vor 16 Jahren
[WCF] Mehrere Dienste pro Host

Hallo,

ich lasse einen Dienst mit WCF (Framework 3.5) hosten.


myHost = new ServiceHost(typeof(UserService);
myHost.Open();

In der App.config stehen die nötigen Hosting-Details.

Nun möchte ich einen zweiten Service hosten lassen, welcher fachlich nichts mit dem anderen zu tun hat und darum nicht in eine gemeinsame Schnittstelle gepresst werden soll, z.B. ganz abstrus einen AutobahnService.

Wie ist hierbei vorzugehen?

Ich gehe mal davon aus, dass in der Konfigurationsdatei mehrere _<service></service> _Einträge problemlos funktionieren. Aber wie gehe ich programmtechnisch vor, weil doch die Klasse ServiceHost im Konstruktor nur einen Typen erwartet.

S
8.746 Beiträge seit 2005
vor 16 Jahren

Versuch doch mal, mehere ServiceHost-Objekte zu erzeugen und zu öffnen.

wdb.lizardking Themenstarter:in
100 Beiträge seit 2006
vor 16 Jahren

Interessanter Ansatz, der zudem noch funktioniert 🙂

Vielen Dank!

wdb.lizardking Themenstarter:in
100 Beiträge seit 2006
vor 16 Jahren

Ein Problem ergibt sich bei mir allerdings, wenn ich mehrere Dienste verwende.

Beim Client erzeuge ich mir mit folgenden Anweisungen in einer Batch-Datei die aktuellen Metadaten.


svcutil.exe /config:App.config /mergeConfig http://server:12345/Service1?wsdl
svcutil.exe /config:App.config /mergeConfig http://server:12345/Service2?wsdl

Bei einem Dienst (Service1) wurde die App.config immer richtig erweitert bei Benutzung des Merge-Flags. Nun werden alte <serviceModel>-Einträge anscheinend ignoriert und jedesmal neue Einträge hinzugefügt.

Ist zwar nicht weltbewegend, wollte ich deswegen hier nur erwähnt haben.

Habt ihr besondere Strategien entwickelt um die Client-Konfigurationen zu benutzen. Eventuell nicht in die allgemeine App.config mitaufnehmen sondern extra lagern?