Dela via


Utveckla kanaler

För att utveckla ett protokoll eller en transportkanal som kan användas med WCF-programskiktet (Windows Communication Foundation) krävs flera steg. Det här avsnittet beskriver dessa steg och pekar på specifika ämnen för mer information. Information om kanalmodellen och de olika typer som nämns i det här avsnittet finns i Översikt över kanalmodell. Ett fullständigt transportkanalexempel finns i Transport: UDP.

Aktivitetslistan Kanalutveckling

Stegen för att skapa en användardefinierad kanal är följande. Alla kanaler måste:

  1. Bestäm vilken av kanalens Exchange-mönster för meddelande (IOutputChannel, IInputChannel, IDuplexChannel, IRequestChanneleller IReplyChannel) som din IChannelFactory och IChannelListener kommer att stödja, samt om den stöder sessionskänsliga varianter av dessa gränssnitt. Mer information finns i Välja ett Exchange-meddelandemönster.

  2. Skapa en kanalfabrik och lyssnare (IChannelFactory och IChannelListener) som stöder ditt meddelandeutbytesmönster. Mer information om hur du utvecklar fabriker finns i Klient: Kanalfabriker och kanaler. Mer information om hur du utvecklar lyssnare finns i Tjänst: Kanallyssnare och Kanaler.

  3. Kontrollera att alla nätverksspecifika undantag normaliseras till antingen System.TimeoutException eller till lämplig härledd klass av CommunicationException. Mer information finns i Hantera undantag och fel.

  4. Om du vill aktivera användning från programlagret lägger du till en BindingElement som lägger till den anpassade kanalen i en kanalstack. Mer information finns i Skapa ett BindingElement.

Följande ytterligare steg krävs för att aktivera mer fullständigt stöd på programnivån:

  1. Lägg till ett avsnitt för bindningselementtillägg för att exponera det nya bindningselementet för konfigurationssystemet. Mer information finns i Stöd för konfiguration och metadata.

  2. Lägg till metadatatillägg för att kommunicera funktioner till andra slutpunkter. Mer information finns i Stöd för konfiguration och metadata.

  3. Lägg till en bindning som förkonfigurerar en stack med bindningselement enligt en väldefinierad profil. Mer information finns i Skapa användardefinierade bindningar.

  4. Lägg till ett bindningsavsnitt och ett bindningskonfigurationselement för att exponera bindningen till konfigurationssystemet. Mer information finns i Stöd för konfiguration och metadata.

Se även