Entwickeln von Kanälen

Zum Entwickeln eines Protokoll- oder Transportkanals, der mit der Windows Communication Foundation (WCF)-Anwendungsschicht verwendet werden kann, sind mehrere Schritte erforderlich. In diesem Thema werden diese Schritte beschrieben, und Sie werden auf bestimmte Themen verwiesen, in denen Sie weitere Informationen erhalten. Um das Kanalmodell und die verschiedenen Typen zu verstehen, die in diesem Thema erwähnt werden, lesen Sie Kanalmodellübersicht. Ein vollständiges Transportkanalbeispiel finden Sie unter Transport: UDP.

Die Aufgabenliste für die Kanalentwicklung

Die Schritte, mit denen ein benutzerdefinierter Kanal wie folgt erstellt wird. Für alle Kanäle gilt Folgendes:

  1. Es muss entschieden werden, welche Nachrichtenaustauschmuster des Kanals (IOutputChannel, IInputChannel, IDuplexChannel, IRequestChannel oder IReplyChannel) von IChannelFactory und IChannelListener unterstützt werden und ob die sitzungsbasierten Varianten dieser Schnittstellen unterstützt werden. Ausführliche Informationen finden Sie unter Auswählen eines Nachrichtenaustauschmusters.

  2. Es müssen eine Kanalfactory und ein Listener (IChannelFactory und IChannelListener) erstellt werden, die das Nachrichtenaustauschmuster unterstützen. Ausführliche Informationen zur Entwicklung von Fabriken finden Sie unter Client: Kanalyfactories und Kanäle. Ausführliche Informationen zum Entwickeln von Listenern finden Sie unter Dienst: Kanallistener und Kanäle.

  3. Es muss sichergestellt werden, dass alle netzwerkspezifischen Ausnahmen zu System.TimeoutException oder der entsprechenden abgeleiteten Klasse von CommunicationException normalisiert werden. Ausführliche Informationen finden Sie unter Behandeln von Ausnahmen und Fehlern.

  4. Wenn Sie die Verwendung von der Anwendungsebene aktivieren möchten, fügen Sie ein BindingElement hinzu, über das der benutzerdefinierte Kanal einem Kanalstapel hinzugefügt wird. Weitere Informationen finden Sie unter Erstellen eines Bindungselements.

Die folgenden zusätzlichen Schritte sind erforderlich, um eine umfassendere Unterstützung auf Anwendungsebene zu aktivieren:

  1. Fügen Sie einen Bindungselementerweiterungs-Abschnitt hinzu, um das neue Bindungselement für das Konfigurationssystem verfügbar zu machen. Weitere Informationen finden Sie unter Konfigurations- und Metadatenunterstützung.

  2. Fügen Sie Metadatenerweiterungen hinzu, um anderen Endpunkten Funktionen mitzuteilen. Weitere Informationen finden Sie unter Konfigurations- und Metadatenunterstützung.

  3. Fügen Sie eine Bindung hinzu, die einen Stapel mit Bindungselementen entsprechend einem genau definierten Profil vorkonfiguriert. Weitere Informationen finden Sie unter Erstellen von benutzerdefinierten Bindungen.

  4. Fügen Sie einen Bindungsabschnitt und ein Bindungskonfigurationselement hinzu, um die Bindung für das Konfigurationssystem verfügbar zu machen. Weitere Informationen finden Sie unter Konfigurations- und Metadatenunterstützung.

Siehe auch