SupportedAddressingMode Wyliczenie

Definicja

Określa, czy usługa obsługuje wysyłanie odpowiedzi tylko do adresów anonimowych, tylko do adresów nie anonimowych, czy do obu tych adresów.

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

Pola

Anonymous 0

Serwer obsługuje tylko adresy anonimowe, a klienci muszą podać anonimowy adres odpowiedzi.

Mixed 2

Serwer obsługuje zarówno anonimowe, jak i nie anonimowe adresy, a klienci mogą zdecydować się na użycie obu tych adresów.

NonAnonymous 1

Serwer obsługuje tylko adresy nie anonimowe, a klienci muszą podać adres odpowiedzi nie anonimowej.

Uwagi

To wyliczenie służy do określania możliwości serwera, który z kolei nakłada na swoich klientów wymaganie.

Program Windows Communication Foundation (WCF) ma wiele kontrolek adresowania do określania miejsca wysyłania komunikatów. Na przykład istnieje adres logiczny To miejsca docelowego komunikatu, fizyczny adres ("Via") używany przez transport, przy którym usługa nasłuchuje i ReplyTo adres punktu końcowego, który dostarcza adres punktu końcowego klienta.

W najbardziej podstawowym przypadku, gdy dwie strony wymieniają wiadomości tylko między sobą, nie trzeba oddzielnie określać tych adresów. Jednak ze względu na to, że wymiany mogą obejmować inne miejsca docelowe wiadomości, musisz mieć możliwość określenia, kiedy adresy muszą być jawnie podane. Nawet między dwiema stronami ta możliwość jest czasami wymagana, podobnie jak w przypadku podwójnego protokołu HTTP, w przypadku którego serwer musi utworzyć własne żądanie HTTP. Następujące rodzaje relacji są definiowane przez SupportedAddressingMode wyliczenie w celu przechwycenia tych wzorców obsługi komunikatów:

  • Adresy anonimowe to najbardziej podstawowa forma adresowania. Adresowanie anonimowe jest używane, gdy istnieje domyślna ścieżka odpowiedzi. TCP to dwukierunkowy transport komunikacji, a odpowiedź na komunikat TCP może zostać wysłana z powrotem do drugiej strony gniazda, które wysłało oryginalny komunikat. Podobnie model żądania odpowiedzi HTTP wysyła odpowiedzi za pośrednictwem kanału odpowiedzi HTTP. Żadna z tych odpowiedzi nie wymaga określenia miejsca, w którym będą wyświetlane komunikaty odpowiedzi. Gdy serwer wymaga anonimowych odpowiedzi od klienta, używa wartości Anonimowe wyliczenia. Udostępnione przez system NetTcpBindingBasicHttpBinding powiązania programu WSHttpBinding WCF zawsze używają adresów anonimowych.

  • Nieanonymous adresy są używane podczas wysyłania odpowiedzi wymaga utworzenia nowego kanału komunikacji. Powiązanie dostarczone WSDualHttpBinding przez system WCF używa adresu nieanonymicznego. W przypadku podwójnego protokołu HTTP klient tworzy żądanie HTTP w celu wysłania komunikatu, a następnie serwer musi utworzyć własne żądanie HTTP, aby wysłać odpowiedź. Ponieważ serwer inicjuje wysyłanie, musi mieć określony punkt końcowy w celu nawiązania połączenia. Musisz podać serwer adres punktu końcowego dla jego odpowiedzi. Podobnie, jeśli usługa musi odpowiedzieć na jednokierunkowy komunikat, który odebrał, wymaga również adresu nieanonymicznego, ponieważ nie ma dostępnego kanału zwrotnego dla komunikacji. Jeśli serwer wysyła komunikat z powrotem, wymagana jest zupełnie oddzielna operacja od tej użytej do wysłania pierwszego komunikatu.

  • Mieszane to trzecia forma adresowania, która łączy anonimowe i nieanonymous adresy w zależności od wysyłanej wiadomości. Typowym przykładem adresowania w trybie mieszanym jest użycie dedykowanej maszyny do przetwarzania komunikatów o błędach lub potwierdzeniach. Jeśli standardową sekwencją wymiany odpowiedzi jest HTTP lub TCP, odpowiedzi używają adresowania anonimowego, ale błędy używają adresowania nie anonimowego. Chociaż WCF nie zapewnia funkcji adresowania mieszanego w jednym ze swoich standardowych powiązań, można napisać kanał, który umożliwia usłudze wysyłanie odpowiedzi bezpośrednio w kanale zwrotnym (gdy adres odpowiedzi jest anonimowy) lub w osobnym kanale (gdy adres odpowiedzi jest nonAnonymous). W takim przypadku element powiązania kanału jest używany do ustawiania wartości SupportedAddressingMode Mieszane.

Dotyczy