Frage

Ich versuche, meinen Kopf um die Adressierung von WCF-Diensten zu erhalten.

Wir haben einen Client-Server-Setup, wo der Server gelegentlich (vielleicht einmal pro Tag) muß die Daten für jeden Kunden drücken. Ich möchte auf jedem Client eine leichte WCF Listenerdienst habe in einem NT-Dienst gehostet, um diese Daten zu empfangen. Wir haben bereits einen solchen NT-Dienst-Setup einige lokale WCF-Dienste für andere Aufgaben Hosting so der Aufwand für diese minimal ist.

Aufgrund des vorhandenen Legacy-Code auf dem Server ich glaube, der Service muss als ASMX ausgesetzt werden und die Verwendung basicHttpBinding, damit sie verbinden.

Jeder Client auf dem Server durch den Benutzer registriert ist (sie müssen sie individuell konfigurieren), um Entdeckung nicht das Problem ist.

Meine Frage ist, wie funktioniert Adressieren der Arbeit? Ich stelle mir die Benutzer auf dem Server in der Form der Client-Adresse eingeben

http://0.0.0.0/MyService

oder auch

http://hostname/MyService

Wenn ja, wie konfiguriere ich den Client-Dienst in seiner App.config? Verwende ich localhost?

Wenn nicht, dann was ist der Weg, um den Dienst Empfohlene an den Server des Aussetzens?

Hinweis:

  • Ich mag nicht in IIS Host als dass die Hardware zusätzliche Anforderungen ergänzt für die Kunden erforderlich.
  • Die Kunden sicher auf LANs liegt fast werden, nicht über das öffentliche Internet
War es hilfreich?

Lösung

Sie konfigurieren die Basisadresse des Service wie folgt:

<system.serviceModel>
  <services>
    <service name="Ns.FooService">
      <host>
        <baseAddresses>
          <add baseAddress="http://localhost:9999" />
        </baseAddresses>
      </host>
      <endpoint
          address="/foo"
          binding="basicHttpBinding"
          contract="Ns.IFooContract" />
     </service>
  </services>
</system.serviceModel>

Und dann könnte Ihr Service durch http://servename:9999/foo zugänglich sein. Sie können unter diesem Artikel für weitere Informationen einen Blick darauf werfen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top