Vom System bereitgestellte BindungenSystem-Provided Bindings

Bindungen geben den Kommunikationsmechanismus für die Kommunikation mit einem Endpunkt und die zum Herstellen einer Verbindung mit einem Endpunkt erforderlichen Kommunikationsdetails an.Bindings specify the communication mechanism to use when talking to an endpoint and indicate how to connect to an endpoint. Eine Bindung enthält die folgenden Elemente:A binding contains the following elements:

  • Der Protokollstapel legt die Einstellungen bezüglich Sicherheit, Zuverlässigkeit und Kontextablauf fest, die beim Senden von Nachrichten zum Endpunkt verwendet werden.The protocol stack determines the security, reliability, and context flow settings to use for messages that are sent to the endpoint.

  • Die Transportebene bestimmt das zugrunde liegende Transportprotokoll, das zum Senden von Nachrichten zum Endpunkt verwendet werden soll, beispielsweise TCP oder HTTP.The transport determines the underlying transport protocol to use when sending messages to the endpoint, for example, TCP or HTTP.

  • Die Codierung bestimmt die Nachrichtencodierung, z. B. Text/XML, binär oder MTOM (Message Transmission Optimization Mechanism), die für Nachrichten, die an den Endpunkt gesendet werden, verwendet werden soll.The encoding determines the wire encoding to use for messages that are sent to the endpoint, for example, text/XML, binary, or Message Transmission Optimization Mechanism (MTOM).

In diesem Thema werden alle vom System bereitgestellten Windows Communication Foundation (WCF)Windows Communication Foundation (WCF)-Bindungen vorgestellt.This topic presents all of the system-provided Windows Communication Foundation (WCF)Windows Communication Foundation (WCF) bindings. Wenn keine dieser Bindungen die Kriterien der Anwendung erfüllt, können Sie eine benutzerdefinierte Bindung erstellen.If none of these meets the exact criteria for your application, you can create a custom binding. Weitere Informationen finden Sie unterFor more information aboutErstellung benutzerdefinierter Bindungen finden Sie unter benutzerdefinierte Bindungen. creating custom bindings, see Custom Bindings.

Eine sichere und vollständig kompatible Bindung, die das WS-Federationprotokoll unterstützt, ermöglicht es einem Verbund angehörenden Organisationen, Benutzer effizient zu authentifizieren und zu autorisieren.A secure and interoperable binding that supports the WS-Federation protocol enables organizations that are in a federation to efficiently authenticate and authorize users.

Wichtig

Wählen Sie immer eine Bindung aus, die Sicherheitsfunktionen einschließt.Always select a binding that includes security. Standardmäßig werden alle Bindungen außer der <BasicHttpBinding > Element haben die Sicherheit aktiviert.By default, all bindings except the <basicHttpBinding> element have security enabled. Wenn Sie keine sichere Bindung auswählen oder Sicherheitsfunktionen deaktivieren, müssen Sie die Daten auf eine andere Weise schützen, z. B. durch ein geschütztes Rechenzentrum oder ein isoliertes Netzwerk.If you do not select a secure binding or disable security, be sure to protect your data in some other manner, such as storing in a secured data center or on an isolated network.

Wichtig

Verwenden Sie nur dann Duplexverträge mit Bindungen, die keine Sicherheitsfunktionen unterstützen oder bei denen die Sicherheitsfunktionen deaktiviert sind, wenn Sie die Daten auf andere Weise schützen.Never use duplex contracts with bindings that do not support security or that have security disabled unless you secure the data by some other means.

Vom System bereitgestellte BindungenSystem-Provided Bindings

Die folgenden Bindungen sind im Lieferumfang von WCFWCF enthalten.The following bindings ship with WCFWCF.

BindungBinding KonfigurationselementConfiguration Element BeschreibungDescription
BasicHttpBinding <BasicHttpBinding ><basicHttpBinding> Eine Bindung, die sich für die Kommunikation mit Webdiensten eignet, die dem WS-Basic Profile entsprechen, beispielsweise auf ASP.NET-Webdiensten (ASMX) basierende Dienste.A binding that is suitable for communicating with WS-Basic Profile conformant Web services, for example, ASP.NET Web services (ASMX)-based services. Diese Bindung verwendet HTTP als Transport und Text/XML als Standardnachrichtencodierung.This binding uses HTTP as the transport and text/XML as the default message encoding.
WSHttpBinding <WsHttpBinding ><wsHttpBinding> Eine sichere und vollständig kompatible Bindung, die sich für Nicht-Duplexdienstverträge eignet.A secure and interoperable binding that is suitable for non-duplex service contracts.
WSDualHttpBinding <WsDualHttpBinding ><wsDualHttpBinding> Eine sichere und vollständig kompatible Bindung, die für Duplexdienstverträge oder für die Kommunikation über SOAP-Vermittler geeignet ist.A secure and interoperable binding that is suitable for duplex service contracts or communication through SOAP intermediaries.
WSFederationHttpBinding <WsFederationHttpBinding ><wsFederationHttpBinding> Eine sichere und vollständig kompatible Bindung, die das WS-Federationprotokoll unterstützt, die es einem Verbund angehörenden Organisationen ermöglicht, Benutzer effizient zu authentifizieren und zu autorisieren.A secure and interoperable binding that supports the WS-Federation protocol that enables organizations that are in a federation to efficiently authenticate and authorize users.
NetHttpBinding <NetHttpBinding ><netHttpBinding> Eine für die Nutzung von HTTP- oder WebSocket-Diensten entwickelte Bindung, die standardmäßig die binäre Codierung verwendet.A binding designed for consuming HTTP or WebSocket services that uses binary encoding by default.
NetHttpsBinding <NetHttpsBinding ><netHttpsBinding> Eine für die Nutzung von HTTP- oder WebSocket-Diensten entwickelte sichere Bindung, die standardmäßig die binäre Codierung verwendet.A secure binding designed for consuming HTTP or WebSocket services that uses binary encoding by default.
NetTcpBinding <NetTcpBinding ><netTcpBinding> Eine sichere und optimierte Bindung, die sich für die computerübergreifende Kommunikation zwischen WCFWCF-Anwendungen eignet.A secure and optimized binding suitable for cross-machine communication between WCFWCF applications.
NetNamedPipeBinding <NetNamedPipeBinding ><netNamedPipeBinding> Eine sichere, zuverlässige und optimierte Bindung, die sich für die Kommunikation zwischen WCFWCF-Anwendungen auf einem Computer eignet.A secure, reliable, optimized binding that is suitable for on-machine communication between WCFWCF applications.
NetMsmqBinding <NetMsmqBinding ><netMsmqBinding> Eine der Warteschlange hinzugefügte Bindung, die für eine computerübergreifende Kommunikation zwischen WCFWCF-Anwendungen geeignet ist.A queued binding that is suitable for cross-machine communication between WCFWCF applications.
NetPeerTcpBinding <NetPeerTcpBinding ><netPeerTcpBinding> Eine Bindung, die eine sichere Kommunikation zwischen mehreren Computern ermöglicht.A binding that enables secure, multiple machine communication.
MsmqIntegrationBinding <MsmqIntegrationBinding ><msmqIntegrationBinding> Eine Bindung, die für eine computerübergreifende Kommunikation zwischen einer WCFWCF-Anwendung und vorhandenen Message Queuing-Anwendungen geeignet ist.A binding that is suitable for cross-machine communication between a WCFWCF application and existing Message Queuing applications.
BasicHttpContextBinding <BasicHttpContextBinding ><basicHttpContextBinding> Eine Bindung, die sich für die Kommunikation mit Webdiensten eignet, die dem WS-Basic Profile entsprechen, und so die Verwendung von HTTP-Cookies zum Austauschen von Kontext ermöglicht.A binding that is suitable for communicating with WS-Basic Profile conformant Web services that enables HTTP cookies to be used to exchange context.
NetTcpContextBinding <NetTcpContextBinding ><netTcpContextBinding> Eine sichere und optimierte Bindung, die sich für die computerübergreifende Kommunikation zwischen WCFWCF-Anwendungen eignet und so die Verwendung von SOAP-Headern zum Austauschen von Kontext ermöglicht.A secure and optimized binding suitable for cross-machine communication between WCFWCF applications that enables SOAP headers to be used to exchange context.
WebHttpBinding <WebHttpBinding ><webHttpBinding> Eine Bindung, die zum Konfigurieren von Endpunkten für WCFWCF-Webdienste verwendet wird, die durch HTTP-Anforderungen und nicht durch SOAP-Nachrichten bereitgestellt werden.A binding used to configure endpoints for WCFWCF Web services that are exposed through HTTP requests instead of SOAP messages.
WSHttpContextBinding <WsHttpContextBinding ><wsHttpContextBinding> Eine sichere undA secure and

In der folgenden Tabelle sind die Funktionen der einzelnen vom System bereitgestellten Bindungen dargestellt.The following table shows the features of each of the system-provided bindings. Die Bindungen sind in den Tabellenspalten angegeben. Die Funktionen werden in den Zeilen aufgelistet und in der zweiten Tabelle beschrieben.The bindings are found in the table columns; the features are listed in the rows and described in a second table. In der folgenden Tabelle werden die im Zusammenhang mit Bindungen verwendeten Abkürzungen erklärt.The following table provides a key for the binding abbreviations used. Zur Auswahl einer Bindung ermitteln Sie, welche Spalte in den Zeilen alle Funktionen enthält, die Sie benötigen.To select a binding, determine which column satisfies all of the row features you need.

BindungBinding InteroperabilitätInteroperability Sicherheit (Standard)Security (Default) SitzungSession

(Standard)(Default)
TransaktionenTransactions DuplexDuplex Codierung (Standard)Encoding (Default) StreamingStreaming

(Standard)(Default)
BasicHttpBinding Basic Profile 1.1Basic Profile 1.1 (Keine), Transport, Nachricht, Gemischt(None), Transport, Message, Mixed (Keine)(None) (Keine)(None) n/vn/a Text, (MTOM)Text, (MTOM) JaYes

(gepuffert)(buffered)
WSHttpBinding WSWS Transport, (Nachricht), GemischtTransport, (Message), Mixed (Keine), zuverlässige Sitzung, Sicherheitssitzung(None), Reliable Session, Security Session (Keine), Ja(None), Yes n/vn/a (Text), MTOM(Text), MTOM NeinNo
WSDualHttpBinding WSWS (Nachricht), Keine(Message), None (Zuverlässige Sitzung), Sicherheitssitzung(Reliable Session), Security Session (Keine), Ja(None), Yes JaYes (Text), MTOM(Text), MTOM NeinNo
WSFederationHttpBinding WS-FederationWS-Federation (Nachricht), Gemischt, Keine(Message), Mixed, None (Keine), zuverlässige Sitzung, Sicherheitssitzung(None), Reliable Session, Security Session (Keine), Ja(None), Yes NeinNo (Text), MTOM(Text), MTOM NeinNo
NetHttpBinding .NET.NET (Keine), Transport, Nachricht, TransportWithMessageCredential, TransportCredentialOnly(None), Transport, Message, TransportWithMessageCredential, TransportCredentialOnly Siehe den Hinweis unten.See note below KeinerNone Siehe den Hinweis unten.See note below (Binär), Text, MTOM(Binary), Text,MTOM Ja (gepuffert)Yes (buffered)
NetHttpsBinding .NET.NET (Transport), TransportWithMessageCredential(Transport), TransportWithMessageCredential Siehe den Hinweis unten.See note below KeinerNone Siehe den Hinweis unten.See note below (Binär), Text, MTOM(Binary), Text,MTOM Ja (gepuffert)Yes (buffered)
NetTcpBinding .NET.NET (Transport), Nachricht, Keine, Gemischt(Transport), Message, None, Mixed (Transport), zuverlässige Sitzung, Sicherheitssitzung(Transport), Reliable Session, Security Session (Keine), Ja(None), Yes JaYes BinärBinary JaYes

(gepuffert)(buffered)
NetNamedPipeBinding .NET.NET (Transport), Keine(Transport), None Keine, (Transport)None, (Transport) (Keine), Ja(None), Yes JaYes BinärBinary JaYes

(gepuffert)(buffered)
NetMsmqBinding .NET.NET Nachricht, (Transport), KeineMessage, (Transport), None Keine, (Transport)(None), Transport Keine, (Ja)None, (Yes) NeinNo BinärBinary NeinNo
NetPeerTcpBinding PeerPeer (Transport)(Transport) (Keine)(None) (Keine)(None) JaYes NeinNo
MsmqIntegrationBinding MSMQMSMQ (Transport)(Transport) (Keine)(None) Keine, (Ja)None, (Yes) n/vn/a n/vn/a NeinNo
BasicHttpContextBinding Basic Profile 1.1Basic Profile 1.1 (Keine), Transport, Nachricht, Gemischt(None), Transport, Message, Mixed (Keine)(None) (Keine)(None) n/vn/a Text, (MTOM)Text, (MTOM) JaYes

(gepuffert)(buffered)
NetTcpContextBinding .NET.NET (Transport), Nachricht, Keine, Gemischt(Transport), Message, None, Mixed (Transport), zuverlässige Sitzung, Sicherheitssitzung(Transport), Reliable Session, Security Session (Keine), Ja(None), Yes JaYes BinärBinary JaYes

(gepuffert)(buffered)
WSHttpContextBinding WSWS Transport, (Nachricht), GemischtTransport, (Message), Mixed (Keine), zuverlässige Sitzung, Sicherheitssitzung(None), Reliable Session, Security Session (Keine), Ja(None), Yes n/vn/a Text, (MTOM)Text, (MTOM) NeinNo
UdpBinding .NET Hinweis: Interoperabilität lässt Sie durch Implementieren der SOAP-über-UDP-Standardspezifikation die von dieser Bindung implementiert..NET Note: Interoperability can be achieved by implementing the standard SOAP-over-UDP spec which this binding implements. (Keine)(None) (Keine)(None) (Keine)(None) n/vn/a (Text)(Text) NeinNo

Wichtig

NetHttpBinding ist eine für die Nutzung von HTTP- oder WebSocket-Diensten entwickelte Bindung, die standardmäßig die binäre Codierung verwendet.NetHttpBinding is a binding designed for consuming HTTP or WebSocket services and uses binary encoding by default. Die NetHttpBinding erkennt, ob sie mit einem Anforderung-Antwort-Vertrag oder einem Duplexvertrag verwendet wird, und ändert das Verhalten entsprechend, indem HTTP für Anforderung-Antwort und WebSockets für Duplex verwendet werden.NetHttpBinding will detect whether it is used with a request-reply contract or duplex contract and change its behavior to match - it will use HTTP for request-reply and WebSockets for duplex. Dieses Verhalten kann überschrieben werden, mithilfe der System.ServiceModel.NetHttpBinding.WebSocketTransportUsage binden Einstellung: zulässiges: Dies ist der Standardwert und verhält sich wie oben beschrieben. NotAllowed - verhindert dies WebSockets verwendet wird.This behavior can be overridden using the System.ServiceModel.NetHttpBinding.WebSocketTransportUsage binding setting:Allowed - This is the default value and behaves as described above.NotAllowed - This prevents WebSockets from being used. Versucht, einen Duplexvertrag mit dieser Einstellung zu verwenden, führt zu einer Ausnahme. Erforderliche: Erzwingt die Verwendung von WebSockets sogar für Anforderung-Antwort-Verträge.Attempting to use a duplex contract with this setting will result in an exception.Required - This forces WebSockets to be used even for request-reply contracts. NetHttpBinding unterstützt zuverlässige Sitzungen im HTTP-Modus und WebSocket-Modus.NetHttpBinding supports reliable sessions in both HTTP mode and WebSocket mode. Im WebSocket-Modus werden Sitzungen vom Transport bereitgestellt.In WebSocket mode sessions are provided by the transport.

Die in der vorstehenden Tabelle aufgeführten Funktionen werden in der folgenden Tabelle erläutert.The following table explains the features listed in the previous table.

FunktionFeature BeschreibungDescription
InteroperabilitätstypInteroperability Type Benennt das Protokoll oder die Technologie, mit dem bzw. der in der Bindung die Zusammenarbeit sichergestellt wird.Names the protocol or technology with which the binding ensures interoperation.
SicherheitSecurity Gibt an, wie der Kanal geschützt wird.Specifies how the channel is secured:

-"None": Die SOAP-Nachricht nicht geschützt, und der Client ist nicht authentifiziert.- None: The SOAP message is not secured and the client is not authenticated.
-Transport: Die sicherheitsanforderungen werden auf der Transportebene erfüllt.- Transport: Security requirements are satisfied at the transport layer.
-Nachricht: Die sicherheitsanforderungen werden auf der Nachrichtenebene erfüllt.- Message: Security requirements are satisfied at the message layer.
-Gemischt: Ansprüche werden in der Nachricht ausgeführt; Anforderungen an Integrität und Vertraulichkeit werden der Transportebene erfüllt.- Mixed: Claims are carried in the message; integrity and confidentiality requirements are satisfied by the transport layer.
SitzungSession Gibt an, ob die betreffende Bindung Sitzungsverträge unterstützt.Specifies whether this binding supports session contracts.
TransaktionenTransactions Gibt an, ob Transaktionen ermöglicht werden.Specifies whether transactions are enabled.
DuplexDuplex Gibt an, ob Duplexverträge unterstützt werden.Specifies whether duplex contracts are supported. Beachten Sie, dass diese Funktion in der Bindung Unterstützung für Sitzungen erfordert.Note that this feature requires support for Sessions in the binding.
CodierungEncoding Gibt das Übertragungsformat der Nachricht an.Specifies the wire format of the message. Zulässige Werte sind:Allowable values include:

-Text: beispielsweise UTF-8.- Text: for example UTF-8.
-Binary- Binary
-Message Transmission Optimization Mechanism (MTOM): Eine Methode für die effiziente Codierung binärer XML-Elemente innerhalb des Kontexts eines SOAP-Umschlags.- Message Transmission Optimization Mechanism (MTOM): A method for efficiently encoding binary XML elements within the context of a SOAP envelope.
StreamingStreaming Gibt an, ob Streaming für eingehende und ausgehende Nachrichten unterstützt wird.Specifies whether streaming is supported for incoming and outgoing messages. Der Wert wird mithilfe der TransferMode-Eigenschaft für die Bindung festgelegt.Use the TransferMode property on the binding to set the value. Zulässige Werte sind:The allowable values include:

- Buffered: Die Anforderungs- und Antwortnachrichten werden gepuffert.- Buffered: The request and response messages are both buffered.
- Streamed: Die Anforderung und Antwort-Nachrichten werden per Streaming übertragen.- Streamed: The request and response messages are both streamed.
- StreamedRequest: Die Anforderungsnachricht wird per Stream übertragen, und die Antwortnachricht wird gepuffert.- StreamedRequest: The request message is streamed and the response message is buffered.
- StreamedResponse: Die Anforderungsnachricht wird gepuffert, und die Antwortnachricht wird per Stream übertragen.- StreamedResponse: The request message is buffered and the response message is streamed.

Siehe auchSee Also

Übersicht über die EndpunkterstellungEndpoint Creation Overview
Verwenden von Bindungen, um Dienste und Clients zu konfigurierenUsing Bindings to Configure Services and Clients
Einfache WCF-ProgrammierungBasic WCF Programming