Punkty końcowe: Adresy, powiązania i kontrakty
Cała komunikacja z usługą Windows Communication Foundation (WCF) odbywa się za pośrednictwem punktów końcowych usługi. Punkty końcowe zapewniają klientom dostęp do funkcji oferowanych przez usługę WCF.
Każdy punkt końcowy składa się z czterech właściwości:
Adres wskazujący, gdzie można znaleźć punkt końcowy.
Powiązanie określające, jak klient może komunikować się z punktem końcowym.
Kontrakt identyfikujący dostępne operacje.
Zestaw zachowań określających szczegóły lokalnej implementacji punktu końcowego.
W tym temacie omówiono tę strukturę punktu końcowego i wyjaśniono, jak jest ona reprezentowana w modelu obiektów WCF.
Struktura punktu końcowego
Każdy punkt końcowy składa się z następujących elementów:
Adres: adres jednoznacznie identyfikuje punkt końcowy i informuje potencjalnych konsumentów o usłudze, w której się znajduje. Jest reprezentowany w modelu obiektów WCF przez klasę EndpointAddress . Klasa EndpointAddress zawiera:
Właściwość Uri reprezentująca adres usługi.
Właściwość Identity , która reprezentuje tożsamość zabezpieczeń usługi i kolekcję opcjonalnych nagłówków komunikatów. Opcjonalne nagłówki komunikatów służą do dostarczania dodatkowych i bardziej szczegółowych informacji adresowania w celu identyfikowania punktu końcowego lub interakcji z nim.
Aby uzyskać więcej informacji, zobacz Określanie adresu punktu końcowego.
Powiązanie: powiązanie określa, jak komunikować się z punktem końcowym. Obejmuje on:
Protokół transportowy do użycia (na przykład TCP lub HTTP).
Kodowanie używane dla komunikatów (na przykład tekst lub plik binarny).
Niezbędne wymagania dotyczące zabezpieczeń (na przykład zabezpieczenia komunikatów SSL lub SOAP).
Aby uzyskać więcej informacji, zobacz Omówienie powiązań programu WCF. Powiązanie jest reprezentowane w modelu obiektów WCF przez abstrakcyjną klasę Bindingbazową . W większości scenariuszy użytkownicy mogą używać jednego z powiązań dostarczonych przez system. Aby uzyskać więcej informacji, zobacz Powiązania dostarczone przez system.
Kontrakty: Kontrakt określa, jakie funkcje uwidacznia punkt końcowy klientowi. Kontrakt określa:
Jakie operacje mogą być wywoływane przez klienta.
Forma wiadomości.
Typ parametrów wejściowych lub danych wymaganych do wywołania operacji.
Jakiego typu przetwarzanie lub komunikat odpowiedzi może oczekiwać klient.
Aby uzyskać więcej informacji na temat definiowania kontraktu, zobacz Projektowanie kontraktów usług.
Zachowania: zachowania punktów końcowych umożliwiają dostosowanie lokalnego zachowania punktu końcowego usługi. Zachowania punktów końcowych można osiągnąć, uczestnicząc w procesie tworzenia środowiska uruchomieniowego WCF. Przykładem zachowania punktu końcowego jest ListenUri właściwość , która umożliwia określenie innego adresu nasłuchiwania niż adres PROTOKOŁU SOAP lub adresu WSDL (Web Services Description Language). Aby uzyskać więcej informacji, zobacz ClientViaBehavior.
Definiowanie punktów końcowych
Punkt końcowy usługi można określić w sposób imperatywne przy użyciu kodu lub deklaratywnego za pośrednictwem konfiguracji. Aby uzyskać więcej informacji, zobacz How to: Create a Service Endpoint in Configuration (Jak utworzyć punkt końcowy usługi w konfiguracji ) i How to: Create a Service Endpoint in Code (Jak utworzyć punkt końcowy usługi w kodzie).
W tej sekcji
W tej sekcji opisano przeznaczenie powiązań, punktów końcowych i adresów; Pokazuje, jak skonfigurować powiązanie i punkt końcowy; i pokazuje, jak używać ClientVia
zachowania i ListenUri
właściwości.
Adresy
Opisuje sposób rozwiązywania punktów końcowych w programie WCF.
Powiązania
Opisuje sposób użycia powiązań w celu określenia szczegółów transportu, kodowania i protokołu wymaganych dla klientów i usług do komunikowania się ze sobą.
Kontrakty
Opisuje sposób definiowania metod usługi przez kontrakty.
Instrukcje: tworzenie punktu końcowego usługi w konfiguracji
Opisuje sposób tworzenia punktu końcowego usługi w konfiguracji.
Instrukcje: tworzenie punktu końcowego usługi w kodzie
Opisuje sposób tworzenia punktu końcowego usługi w kodzie.
Instrukcje: weryfikacja skompilowanego kodu usługi za pomocą programu Svcutil.exe
Opisuje sposób wykrywania błędów w implementacjach i konfiguracjach usług bez hostowania usługi przy użyciu narzędzia ServiceModel Metadata Tool (Svcutil.exe).