Wir haben einen Dienst mit einigen Einstellungen, die nur über net.tcp unterstützt werden. Was ist der beste Weg, einen weiteren Endpunkt hinzuzufügen? Muss ich einen komplett neuen Host erstellen?Kann ein Dienst mehrere Endpunkte haben?
Antwort
Ein Dienst kann mehrere Endpunkte innerhalb eines einzelnen Hosts haben, aber jeder Endpunkt muss eine eindeutige Kombination aus Adresse, Bindung und Vertrag aufweisen. Stellen Sie für einen von IIS gehosteten Dienst (dh eine SVC-Datei) einfach die Adresse des Endpunkts auf relativ URI ein und stellen Sie sicher, dass Ihr von Visual Studio oder wsdl.exe generierter Client den Namen des Endpunkts in seinem Konstruktor angibt.
Siehe auch den MSDN-Artikel Multiple Endpoints.
Wenn Sie derzeit IIS als Host verwenden, müssen Sie einen vollständig neuen Host erstellen. IIS unterstützt nur HTTP- und nicht TCP-Bindungen. Wenn Sie jedoch WAS oder einen Windows-Dienst verwenden, können Sie einfach einen neuen net.tcp-Endpunkt erstellen.
Sie können mehrere Endpunkte entweder auf dem Server oder auf dem Client definieren.
Um dies auf dem Client zu tun, müssen Sie nur Ihre app.config-Datei mit einem neuen Endpunkt mit einem anderen Namen bearbeiten und dann definieren, wenn Sie Ihren neuen Client erstellen.
Zum Beispiel, wenn Sie einen Endpunkt in der Client-Anwendung wie haben:
<endpoint address="https://yourdomain.com/WCF/YourService.svc"
binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_IYourService"
contract="MessagingService.IYourService"
name="BasicHttpBinding_IYourService" />
Welche Sie rufen nach:
:YourServiceClient client = new YourServiceClient();
Sie einen neuen Endpunkt mit einem neuen Namen hinzufügen
<endpoint address="https://yourotherdomain.com/WCF/YourService.svc"
binding="basicHttpBinding"
bindingConfiguration="BasicHttpBinding_IYourService"
contract="MessagingService.IYourService"
name="BasicHttpBinding_IYourService_ENDPOINT2" />
Welche Sie anrufen können:
YourServiceClient client = new YourServiceClient("BasicHttpBinding_IYourService_ENDPOINT2");
Ich habe gerade die oben genannte Domäne geändert, aber wenn Sie einen neuen Bindungskonfigurationsabschnitt erstellt haben, könnten Sie einfach den Wert "bindingConfiguration" ändern.
- 1. WCF-Dienst für mehrere Endpunkte
- 2. Kann ein Android-Dienst mehrere Berechtigungen haben?
- 3. Mehrere Endpunkte mit Resteasy
- 4. Mehrere Endpunkte unter IIS
- 5. Verwalten mehrerer WCF-Endpunkte für denselben Dienst
- 6. Kann ein Modell mehrere CakePHP-Tabellen haben?
- 7. Mehrere Anker/Endpunkte in jsPlumb
- 8. WCF Mex Endpunkte für mehrere Bindungen
- 9. Zwei Endpunkte für den gleichen Dienst in WCF, ein gesicherter Dienst nicht
- 10. Muss ein Dienst einen eindeutigen Zielnamespace haben?
- 11. So haben Sie JAXRS-Endpunkte im Testordner
- 12. Retrofit - Mehrere Endpunkte mit dem gleichen RestAdapter
- 13. Kann eine Aufgabe mehrere Warter haben?
- 14. Kann ich mehrere Endpunkte für Sendgrid-Ereignisbenachrichtigungen angeben?
- 15. WCF, IIS und Endpunkte
- 16. Kann ein HTML-Element mehrere eindeutige ID-Attribute haben?
- 17. Kann ein div mehrere Klassen haben (Twitter Bootstrap)
- 18. Kann ein HTML-Img-Tag mehrere src-Attribute haben?
- 19. Kubernetes bekommen Endpunkte
- 20. mehrere Endpunkte von solr unsing solarium hinzufügen
- 21. Wie mehrere Endpunkte in Finken zu kombinieren
- 22. Kann ein WCF-Dienst im Windows-Dienst gehostet werden, auf den mehrere Clients zugreifen?
- 23. Kann ich mehrere Konfigurationsdateien in DropWizard haben?
- 24. SKSpriteNode kann nicht mehrere Kinder haben
- 25. Mehrere Anwendungen, einzelne Domäne Wie viele SSL-Endpunkte sind erforderlich?
- 26. Kann eine Bohne im Frühling mehrere Eltern haben?
- 27. JAX-WS mehrere Endpunkte nicht gefunden: Ungültige Anfrage
- 28. ActionScript-3 kann nicht mehrere Konstruktoren haben?
- 29. kann ich mehrere Realm-Dateien haben?
- 30. Kann eine Tabelle mehrere Primärschlüssel haben?
Ich denke, II7 unterstützt nicht-HTTP-Bindungen (d. H. TCP). –