<soapProcessing>
Definiuje zachowanie punktu końcowego klienta używane do marshalowania komunikatów między różnymi typami powiązań i wersjami komunikatów.
<Konfiguracji>
<System.servicemodel>
<Zachowania>
<endpointBehaviors>
<Zachowanie>
<soapProcessing>
Składnia
<soapProcessing processMessages="true|false" />
Atrybuty i elementy
W poniższych sekcjach opisano atrybuty, elementy podrzędne i elementy nadrzędne.
Atrybuty
Atrybut | Opis |
---|---|
processMessages |
Wartość logiczna określająca, czy komunikaty powinny być marshalled między wersjami komunikatów PROTOKOŁU SOAP. |
Elementy podrzędne
Brak
Elementy nadrzędne
Element | Opis |
---|---|
<Zachowanie> | Określa zachowanie punktu końcowego. |
Uwagi
Przetwarzanie protokołu SOAP to proces, w którym komunikaty są konwertowane między wersjami komunikatów.
Usługa routingu Windows Communication Foundation (WCF) może konwertować komunikaty z jednego protokołu na inny. Jeśli wersje komunikatów przychodzących i wychodzących są inne, zostanie utworzony nowy komunikat poprawnej wersji. Przetwarzanie komunikatów z jednego MessageVersion do drugiego odbywa się poprzez utworzenie nowego komunikatu WCF zawierającego część treści i odpowiednie nagłówki przychodzącego komunikatu WCF. Nagłówki specyficzne dla adresowania lub zrozumiałe na poziomie routera nie są używane podczas budowy nowego komunikatu WCF, ponieważ te nagłówki są jedną z innej wersji (w przypadku nagłówków adresowania) lub zostały przetworzone w ramach komunikacji między klientem a routerem.
Niezależnie od tego, czy nagłówek jest umieszczany w komunikacie wychodzącym, zależy od tego, czy został oznaczony jako zrozumiały, ponieważ został przekazany przez warstwę kanału przychodzącego. Nagłówki, które nie są zrozumiałe (takie jak nagłówki niestandardowe), nie są usuwane i dlatego przekazywane przez usługę routingu przez skopiowanie do komunikatu wychodzącego. Treść wiadomości jest kopiowana do komunikatu wychodzącego. Wiadomość jest następnie wysyłana do kanału wychodzącego, w którym wszystkie nagłówki i inne dane koperty specyficzne dla tego protokołu komunikacyjnego/transportu zostaną utworzone i dodane.
Takie kroki przetwarzania mają miejsce po określeniu zachowania przetwarzania protokołu SOAP. To <zachowanie protokołu soapProcessingExtension> jest zachowaniem punktu końcowego, które jest stosowane do wszystkich punktów końcowych klienta (wychodzących) podczas uruchamiania usługi routingu. Domyślne <zachowanie routingu> tworzy i dołącza nowe <zachowanie soapProcessingExtension> z processMessages
ustawieniem ustawionym na true
dla każdego punktu końcowego klienta. Jeśli masz protokół, którego usługa routingu nie rozumie lub chcesz zastąpić domyślne zachowanie przetwarzania, możesz wyłączyć przetwarzanie protokołu SOAP dla całej usługi routingu lub tylko dla określonych punktów końcowych. Aby wyłączyć przetwarzanie protokołu SOAP dla całej usługi routingu we wszystkich punktach końcowych, ustaw soapProcessing
atrybut zachowania routingu<> na false
. Aby wyłączyć przetwarzanie protokołu SOAP dla określonego punktu końcowego, użyj tego zachowania i ustaw jego processMessages
atrybut na false
, a następnie dołącz to zachowanie do punktu końcowego, którego nie chcesz, aby domyślny kod przetwarzania był uruchamiany pod adresem. Gdy <zachowanie routingu konfiguruje usługę routingu> , pominie ponowne zastosowania zachowania punktu końcowego, ponieważ już istnieje.