Share via


SupportedAddressingMode Enumeration

Definition

Gibt an, ob ein Dienst das Senden von Antworten nur an anonyme Adressen, nur an nicht anonyme Adressen oder beides unterstützt.

public enum class SupportedAddressingMode
public enum SupportedAddressingMode
type SupportedAddressingMode = 
Public Enum SupportedAddressingMode
Vererbung
SupportedAddressingMode

Felder

Anonymous 0

Der Server unterstützt nur anonyme Adressen, und Clients müssen eine anonyme Antwortadresse angeben.

Mixed 2

Der Server unterstützt sowohl anonyme als auch nicht anonyme Adressen, und Clients können eine von beiden oder beide verwenden.

NonAnonymous 1

Der Server unterstützt nur nicht anonyme Adressen, und Clients müssen eine nicht anonyme Antwortadresse angeben.

Hinweise

Diese Enumeration wird zur Angabe der Funktionen eines Servers verwendet, die wiederum als Anforderungen für die Clients gelten.

Windows Communication Foundation (WCF) verfügt über eine Vielzahl von Adressierungssteuerelementen, um anzugeben, wohin Nachrichten gesendet werden sollen. Beispielsweise gibt es eine logische To-Adresse für das Nachrichtenziel, die physische Adresse ("Via"), die vom Transport verwendet und von einem Dienst überwacht wird, sowie die ReplyTo-Adresse des Endpunkts, der die Adresse des Clientendpunkts angibt.

Im einfachsten Fall, wenn zwei Teilnehmer Nachrichten nur untereinander austauschen, ist es nicht notwendig, diese Adressen separat anzugeben. Da der Austausch jedoch andere Nachrichtenziele umfassen kann, müssen Sie bestimmen können, wann Adressen explizit bereitgestellt werden müssen. Selbst zwischen zwei Teilnehmern ist dies manchmal erforderlich, z. B. bei dualem HTTP, wenn der Server eigene HTTP-Anforderungen erstellen muss. Die folgenden Arten von Beziehungen werden von der SupportedAddressingMode-Enumeration definiert, um diese Nachrichtenmuster zu erfassen:

  • Anonyme Adressen sind die grundlegendste Form der Adressierung. Anonyme Adressierung wird verwendet, wenn es einen Standardpfad für eine Antwort gibt. TCP ist ein bidirektionaler Kommunikationstransport, und die Antwort auf eine TCP-Nachricht kann an die andere Seite des Sockets gesendet werden, die die Originalnachricht gesendet hat. Auf ähnliche Weise sendet das Anforderungs-Antwort-Modell von HTTP Antworten durch den HTTP-Antwortkanal. Keine dieser Antworten erfordert die Angabe, wohin die Antwortnachrichten gehen. Wenn ein Server anonyme Antworten vom Client benötigt, verwendet er den Anonymen Wert der Enumeration. Die vom WCF-System bereitgestellten NetTcpBindingBindungen und BasicHttpBindingWSHttpBinding verwenden immer anonyme Adressen.

  • NonAnonymous-Adressen werden verwendet, wenn für das Senden der Antwort ein neuer Kanal für die Kommunikation erstellt werden muss. Die vom WCF-System bereitgestellte WSDualHttpBinding Bindung verwendet eine NonAnonymous-Adresse. Mit dualem HTTP erstellt der Client eine HTTP-Anforderung zum Senden einer Nachricht, anschließend muss der Server eine eigene HTTP-Anforderung zum Senden der Antwort erstellen. Da der Server das Senden initiiert, muss er einen bestimmten Endpunkt haben, um die Verbindung herzustellen. Sie müssen dem Server die Adresse eines Endpunkts für die Antwort geben. Wenn ein Dienst auf eine unidirektionale Nachricht reagieren muss, die er empfangen hat, benötigt er auch eine NonAnonymous-Adresse, da kein Rückkanal für die Kommunikation verfügbar ist. Wenn der Server eine Nachricht zurücksendet, ist ein völlig separater Vorgang von dem zum Senden der ersten Nachricht erforderlich.

  • Gemischt ist eine dritte Form der Adressierung, die anonyme und nichtanonymische Adressen kombiniert, je nachdem, welche Nachricht gesendet wird. Ein typisches Beispiel einer Adressierung im gemischten Modus ist die Verwendung eines dedizierten Computers für die Verarbeitung von fehlerhaften oder Bestätigungsnachrichten. Wenn die Standardaustauschsequenz für Antworten HTTP oder TCP ist, verwenden die Antworten anonyme Adressierung, aber die Fehler verwenden eine nicht anonyme Adressierung. Wcf bietet zwar keine Gemischte Adressierungsfunktionalität in einer seiner Standardbindungen, aber es ist möglich, einen Kanal zu schreiben, der es dem Dienst ermöglicht, Antworten direkt auf dem Backkanal (wenn die Antwortadresse anonym ist) oder in einem separaten Kanal (wenn die Antwortadresse Nichtanonym ist) zu senden. In diesem Fall wird das Bindungselement des Kanals verwendet, um auf Mixed festzulegen SupportedAddressingMode .

Gilt für: