Udostępnij za pośrednictwem


Konfigurowanie usług i klientów za pomocą wiązań

Powiązania to obiekty, które określają szczegóły komunikacji wymagane do nawiązania połączenia z punktem końcowym. W szczególności powiązania zawierają informacje o konfiguracji używane do tworzenia klienta lub środowiska uruchomieniowego usługi przez zdefiniowanie specyfiki transportu, formatów przewodów (kodowania komunikatów) i protokołów używanych dla odpowiedniego punktu końcowego lub kanału klienta. Aby utworzyć działającą usługę Windows Communication Foundation (WCF), każdy punkt końcowy w usłudze wymaga powiązania. W tym temacie opisano powiązania, sposób ich definiowania oraz sposób określenia określonego powiązania dla punktu końcowego.

Co definiuje powiązanie

Informacje w powiązaniu mogą być bardzo podstawowe lub bardzo złożone. Najbardziej podstawowe powiązanie określa tylko protokół transportu (taki jak HTTP), który musi być używany do nawiązywania połączenia z punktem końcowym. Ogólnie rzecz biorąc, informacje zawarte w powiązaniu dotyczą sposobu nawiązywania połączenia z punktem końcowym w jednej z kategorii w poniższej tabeli.

Protokoły
Określa używany mechanizm zabezpieczeń— niezawodne możliwości obsługi komunikatów lub ustawienia przepływu kontekstu transakcji.

Transport
Określa podstawowy protokół transportu do użycia (na przykład TCP lub HTTP).

Kodowanie
Określa kodowanie komunikatów, na przykład tekst/XML, binarny lub mechanizm optymalizacji transmisji komunikatów (MTOM), który określa, jak komunikaty są reprezentowane jako strumienie bajtów w sieci.

Wiązania dostarczane przez system

Program WCF zawiera zestaw powiązań dostarczanych przez system, które są przeznaczone do obsługi większości wymagań i scenariuszy aplikacji. Następujące klasy reprezentują kilka przykładów powiązań dostarczonych przez system:

  • BasicHttpBinding: Powiązanie protokołu HTTP odpowiednie do nawiązywania połączenia z usługami sieci Web zgodnymi ze specyfikacją profilu podstawowego WS-I 1.1 (na przykład ASP.NET usługami sieci Web [ASMX]).

  • WSHttpBinding: Powiązanie protokołu HTTP odpowiednie do nawiązywania połączenia z punktami końcowymi zgodnymi z protokołami specyfikacji usług sieci Web.

  • NetNamedPipeBinding: używa technologii kodowania binarnego i tworzenia ramek platformy .NET w połączeniu z transportem potoku nazwanego systemu Windows w celu nawiązania połączenia z innymi punktami końcowymi programu WCF na tym samym komputerze.

  • NetMsmqBinding: używa technologii kodowania binarnego i tworzenia ramek platformy .NET w połączeniu z kolejkowaniem komunikatów (znanym również jako MSMQ), aby tworzyć połączenia komunikatów w kolejce z innymi punktami końcowymi programu WCF.

Aby uzyskać pełną listę powiązań dostarczanych przez system z opisami, zobacz Powiązania dostarczone przez system.

Powiązania niestandardowe

Jeśli kolekcja powiązań dostarczonych przez system nie ma poprawnej kombinacji funkcji, których wymaga aplikacja usługi, możesz utworzyć CustomBinding powiązanie. Aby uzyskać więcej informacji na temat elementów CustomBinding powiązania, zobacz< customBinding> i Niestandardowe powiązania.

Używanie powiązań

Korzystanie z powiązań wiąże się z dwoma podstawowymi krokami:

  1. Wybierz lub zdefiniuj powiązanie. Najprostszą metodą jest wybranie jednego z powiązań dostarczonych przez system i użycie jego ustawień domyślnych. Można również wybrać powiązanie dostarczone przez system i zresetować jego wartości właściwości zgodnie z wymaganiami. Alternatywnie można utworzyć powiązanie niestandardowe i ustawić każdą właściwość zgodnie z potrzebami.

  2. Utwórz punkt końcowy, który używa tego powiązania.

Kod i konfiguracja

Powiązania można definiować lub konfigurować za pomocą kodu lub konfiguracji. Te dwa podejścia są niezależne od typu powiązania używanego, na przykład niezależnie od tego, czy używasz dostarczonego przez system, czy CustomBinding powiązania. Ogólnie rzecz biorąc, użycie kodu zapewnia pełną kontrolę nad definicją powiązania podczas kompilowania. Z kolei użycie konfiguracji umożliwia administratorowi systemu lub użytkownikowi usługi WCF lub klientowi zmianę parametrów powiązań. Ta elastyczność jest często pożądana, ponieważ nie ma możliwości przewidywania określonych wymagań dotyczących maszyn i warunków sieciowych, w których ma zostać wdrożona aplikacja WCF. Oddzielenie informacji o powiązaniu (i adresowaniu) z kodu umożliwia administratorom zmianę szczegółów powiązania bez konieczności ponownego kompilowania lub ponownego wdrażania aplikacji. Należy pamiętać, że jeśli powiązanie jest zdefiniowane w kodzie, zastępuje wszystkie definicje oparte na konfiguracji wprowadzone w pliku konfiguracji. Przykłady tych podejść można znaleźć w następujących tematach:

Zobacz też