.NET 3.0: Einheitliche Kommunikation über die WCF

ABC als Mantra

WCF erleichtert jedoch dem Entwickler nicht nur die Arbeit, es zwingt ihn auch dazu, expliziter als bisher zu beschreiben, was er will. Dies tut er über das Mantra der Windows Communication Foundation, das „ABC“. Es steht für Address, Binding und Contract und beschreibt vollständig das Verhalten einer WCF-Applikation gegenüber der Außenwelt.

ABC: Address, Binding und Contract gehören zu jeder Kommunikation über die WCF dazu. (Quelle: Microsoft)
ABC: Address, Binding und Contract gehören zu jeder Kommunikation über die WCF dazu. (Quelle: Microsoft)

Address steht für die Adresse, unter der die Applikation erreichbar ist. Die Adresse hat immer die Form eines Uniform Resource Identifiers (URI). Im Schemateil der URI wird das verwendete Transportprotokoll beschrieben, zum Beispiel „HTTP“ oder „TCP“. Im hierarchischen Teil findet die eindeutige Adresse Platz, deren Format von der verwendeten Transporttechnik abhängt. So bezeichnet die Adresse HTTPS://prosa1:8005/ServiceModelSamples/CalculatorService einen Endpunkt auf dem Rechner PROSA1, der das HTTPS-Protokoll auf Port 8005 nutzt.

Binding beschreibt, wie die Applikation mit der Außenwelt kommuniziert. Man kann sich ein Binding als einen Stack aus einzelnen Binding-Elementen vorstellen. Jedes Binding-Element beschreibt einen Aspekt der verwendeten Kommunikationstechnik wie zum Beispiel die Transportschicht (TCP oder HTTP), die Kodierung (Binär oder XML) oder die zum Einsatz kommende Verschlüsselungstechnik.

Der Contract bezeichnet die Interfaces und Datenstrukturen, die eine Applikation anbietet. Die WCF kennt drei Haupttypen von Contracts: Service Contracts, Data Contracts und Message Contracts.