Delen via


Bindingen gebruiken om services en clients te configureren

Bindingen zijn objecten die de communicatiedetails opgeven die nodig zijn om verbinding te maken met een eindpunt. Bindingen bevatten meer specifiek configuratiegegevens die worden gebruikt om de client- of serviceruntime te maken door de specifieke kenmerken van transporten, draadindelingen (berichtcodering) en protocollen te definiëren die moeten worden gebruikt voor het respectieve eindpunt of clientkanaal. Voor het maken van een werkende WCF-service (Windows Communication Foundation) vereist elk eindpunt in de service een binding. In dit onderwerp wordt uitgelegd welke bindingen zijn, hoe deze worden gedefinieerd en hoe een bepaalde binding wordt opgegeven voor een eindpunt.

Wat een binding definieert

De informatie in een binding kan zeer eenvoudig of zeer complex zijn. De meest eenvoudige binding geeft alleen het transportprotocol (zoals HTTP) op dat moet worden gebruikt om verbinding te maken met het eindpunt. Over het algemeen valt de informatie die een binding bevat over het maken van verbinding met een eindpunt in een van de categorieën in de volgende tabel.

Protocollen
Bepaalt het beveiligingsmechanisme dat wordt gebruikt, ofwel betrouwbare berichtenfunctie of instellingen voor transactiecontextstroom.

Transport
Bepaalt het onderliggende transportprotocol dat moet worden gebruikt (bijvoorbeeld TCP of HTTP).

Codering
Bepaalt de berichtcodering, bijvoorbeeld text/XML, binary of Message Transmission Optimization Mechanism (MTOM), waarmee wordt bepaald hoe berichten worden weergegeven als bytestromen op de kabel.

Door het systeem geleverde bindingen

WCF bevat een set door het systeem geleverde bindingen die zijn ontworpen om de meeste toepassingsvereisten en -scenario's te dekken. De volgende klassen vertegenwoordigen enkele voorbeelden van door het systeem geleverde bindingen:

  • BasicHttpBinding: Een HTTP-protocolbinding die geschikt is om verbinding te maken met webservices die voldoen aan de WS-I Basic Profile 1.1-specificatie (bijvoorbeeld ASP.NET webservices [ASMX]-gebaseerde services).

  • WSHttpBinding: Een HTTP-protocolbinding die geschikt is om verbinding te maken met eindpunten die voldoen aan de specificatiesprotocollen voor webservices.

  • NetNamedPipeBinding: maakt gebruik van de binaire coderings- en frametechnologieën van .NET in combinatie met het Windows-pijptransport om verbinding te maken met andere WCF-eindpunten op dezelfde computer.

  • NetMsmqBinding: maakt gebruik van de binaire .NET-coderings- en frametechnologieën in combinatie met Message Queuing (ook wel MSMQ genoemd) om berichtenverbindingen met andere WCF-eindpunten in de wachtrij te maken.

Zie Door het systeem geleverde bindingen voor een volledige lijst met door het systeem geleverde bindingen, met beschrijvingen.

Aangepaste bindingen

Als de door het systeem geleverde bindingverzameling niet beschikt over de juiste combinatie van functies die een servicetoepassing nodig heeft, kunt u een CustomBinding binding maken. Zie customBinding en Custom Bindings> voor meer informatie over de elementen van een CustomBinding binding.<

Bindingen gebruiken

Het gebruik van bindingen omvat twee basisstappen:

  1. Selecteer of definieer een binding. De eenvoudigste methode is om een van de door het systeem geleverde bindingen te kiezen en de standaardinstellingen te gebruiken. U kunt ook een door het systeem geleverde binding kiezen en de eigenschapswaarden opnieuw instellen op basis van uw vereisten. U kunt ook een aangepaste binding maken en elke eigenschap zo nodig instellen.

  2. Maak een eindpunt dat gebruikmaakt van deze binding.

Code en configuratie

U kunt bindingen definiëren of configureren via code of configuratie. Deze twee benaderingen zijn onafhankelijk van het type binding dat wordt gebruikt, bijvoorbeeld of u een door het systeem geleverde of een CustomBinding binding gebruikt. Over het algemeen geeft het gebruik van code u volledige controle over de definitie van een binding wanneer u compileert. Met behulp van configuratie kan een systeembeheerder of de gebruiker van een WCF-service of -client de parameters van bindingen wijzigen. Deze flexibiliteit is vaak wenselijk omdat er geen manier is om de specifieke machinevereisten en netwerkomstandigheden te voorspellen waarin een WCF-toepassing moet worden geïmplementeerd. Door de bindingsinformatie (en adressering) van de code te scheiden, kunnen beheerders de bindingsgegevens wijzigen zonder de toepassing opnieuw te hoeven compileren of opnieuw te implementeren. Houd er rekening mee dat als de binding is gedefinieerd in code, alle definities op basis van configuraties in het configuratiebestand worden overschreven. Zie de volgende onderwerpen voor voorbeelden van deze benaderingen:

Zie ook