Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Bindungen sind Objekte, die die Kommunikationsdetails angeben, die zum Herstellen einer Verbindung mit einem Endpunkt erforderlich sind. Insbesondere enthalten Bindungen Konfigurationsinformationen, die zum Erstellen der Client- oder Dienstlaufzeit verwendet werden, indem die Besonderheiten von Transporten, Drahtformaten (Nachrichtencodierung) und Protokolle definiert werden, die für den jeweiligen Endpunkt oder Clientkanal verwendet werden. Um einen funktionierenden Windows Communication Foundation (WCF)-Dienst zu erstellen, erfordert jeder Endpunkt im Dienst eine Bindung. In diesem Thema wird erläutert, was Bindungen sind, wie sie definiert werden und wie eine bestimmte Bindung für einen Endpunkt angegeben wird.
Was eine Bindung definiert
Die Informationen in einer Bindung können sehr einfach oder sehr komplex sein. Die grundlegendste Bindung gibt nur das Transportprotokoll (z. B. HTTP) an, das zum Herstellen einer Verbindung mit dem Endpunkt verwendet werden muss. Allgemein fallen die Informationen, die eine Bindung zum Herstellen einer Verbindung mit einem Endpunkt enthält, in eine der Kategorien in der folgenden Tabelle.
Protokolle
Bestimmt den verwendeten Sicherheitsmechanismus, entweder zuverlässige Nachrichtenübermittlung oder Einstellungen für den Transaktionskontextfluss.
Transport
Bestimmt das zu verwendende zugrunde liegende Transportprotokoll (z. B. TCP oder HTTP).
Codierung
Bestimmt die Nachrichtencodierung, z. B. Text/XML, binär oder MTOM (Message Transmission Optimization Mechanism), der bestimmt, wie Nachrichten als Bytedatenströme auf dem Draht dargestellt werden.
Vom System bereitgestellte Bindungen
WCF enthält eine Reihe von vom System bereitgestellten Bindungen, die für die meisten Anwendungsanforderungen und Szenarien ausgelegt sind. Die folgenden Klassen stellen einige Beispiele für vom System bereitgestellte Bindungen dar:
BasicHttpBinding: Eine HTTP-Protokollbindung, die für die Verbindung mit Webdiensten geeignet ist, die der WS-I Basic Profile 1.1-Spezifikation entsprechen (z. B. ASP.NET Webdienste [ASMX]-basierte Dienste).
WSHttpBinding: Eine HTTP-Protokollbindung, die für die Verbindung mit Endpunkten geeignet ist, die den Protokollen der Webdienstspezifikationen entsprechen.
NetNamedPipeBinding: Verwendet die binären .NET-Codierungs- und -Framingtechnologien zusammen mit dem Named Pipe-Transport von Windows zur Verbindung mit anderen WCF-Endpunkten auf demselben Computer.
NetMsmqBinding: Verwendet die .NET-Binärcodierungs- und Rahmentechnologien in Verbindung mit dem Message Queuing (auch als MSMQ bezeichnet), um in die Warteschlange eingereihte Nachrichtenverbindungen mit anderen WCF-Endpunkten zu erstellen.
Eine vollständige Liste der vom System bereitgestellten Bindungen mit Beschreibungen finden Sie unter System-Provided Bindungen.
Benutzerdefinierte Bindungen
Wenn die vom System bereitgestellte Bindungssammlung nicht über die richtige Kombination von Features verfügt, die eine Dienstanwendung erfordert, können Sie eine CustomBinding Bindung erstellen. Weitere Informationen zu den Elementen einer CustomBinding Bindung finden Sie unter <customBinding> und Custom Bindings.
Verwenden von Bindungen
Die Verwendung von Bindungen umfasst zwei grundlegende Schritte:
Wählen Oder definieren Sie eine Bindung. Die einfachste Methode besteht darin, eine der vom System bereitgestellten Bindungen auszuwählen und ihre Standardeinstellungen zu verwenden. Sie können auch eine vom System bereitgestellte Bindung auswählen und ihre Eigenschaftswerte entsprechend Ihren Anforderungen zurücksetzen. Alternativ können Sie eine benutzerdefinierte Bindung erstellen und jede Eigenschaft nach Bedarf festlegen.
Erstellen Sie einen Endpunkt, der diese Bindung verwendet.
Code und Konfiguration
Sie können Bindungen über Code oder Konfiguration definieren oder einstellen. Diese beiden Ansätze sind unabhängig von der Art der verwendeten Bindung, z. B. ob Sie eine vom System bereitgestellte oder eine CustomBinding Bindung verwenden. Im Allgemeinen können Sie mithilfe von Code die Vollständige Kontrolle über die Definition einer Bindung beim Kompilieren erhalten. Die Verwendung der Konfiguration ermöglicht es einem Systemadministrator oder dem Benutzer eines WCF-Diensts oder Clients, die Parameter von Bindungen zu ändern. Diese Flexibilität ist häufig wünschenswert, da es keine Möglichkeit gibt, die spezifischen Computeranforderungen und Netzwerkbedingungen vorherzusagen, in denen eine WCF-Anwendung bereitgestellt werden soll. Durch das Trennen der Bindungsinformationen (und Adressierung) vom Code können Administratoren die Bindungsdetails ändern, ohne die Anwendung erneut kompilieren oder erneut bereitstellen zu müssen. Beachten Sie, dass beim Definieren der Bindung im Code alle konfigurationsbasierten Definitionen in der Konfigurationsdatei überschrieben werden. Beispiele für diese Ansätze finden Sie in den folgenden Themen:
So geht's: Einen WCF-Dienst in einer verwalteten Anwendung hosten bietet ein Beispiel für das Erstellen einer Bindung im Code.
Lernprogramm: Erstellen eines Windows Communication Foundation-Clients bietet ein Beispiel für das Erstellen eines Clients mithilfe der Konfiguration.