开发通道
开发可以与 Windows Communication Foundation (WCF) 应用程序层一起使用的协议或传输通道需要多个步骤。本主题介绍这些步骤并为您指出特定主题以了解更多信息。若要了解本主题中提及的通道模型和各种类型,请参见通道模型概述。有关完整的传输通道示例,请参见Transport: UDP。
通道开发任务列表
创建用户定义的通道的步骤如下所示:所有通道必须:
- 确定您的 IChannelFactory 和 IChannelListener 将支持哪种通道消息交换模式(IOutputChannel、IInputChannel、IDuplexChannel、IRequestChannel 或 IReplyChannel),以及该模式是否支持这些接口的会话变体。有关详细信息,请参见选择消息交换模式。
- 创建支持您的消息交换模式的通道工厂和侦听器(IChannelFactory 和 IChannelListener)。有关开发工厂的详细信息,请参见客户端:通道工厂和通道。有关开发侦听器的详细信息,请参见服务:通道侦听器和通道。
- 确保将任何特定于网络的异常规范化为 System.TimeoutException 或 CommunicationException 的相应派生类。有关详细信息,请参见处理异常和错误。
- 若要从应用程序层使用通道,请添加一个可将自定义通道添加到通道堆栈的 BindingElement。有关更多信息,请参见创建 BindingElement。
要在应用程序层启用更完全的支持,需要执行以下附加步骤:
- 添加一个绑定元素扩展部分,用于向配置系统公开新的绑定元素。有关更多信息,请参见配置和元数据支持。
- 添加元数据扩展以将各种功能传递给其他终结点。有关更多信息,请参见配置和元数据支持。
- 添加一个绑定,以根据准确定义的配置文件预先配置绑定元素堆栈。有关更多信息,请参见创建用户定义的绑定。
- 添加一个绑定部分和绑定配置元素,用于向配置系统公开该绑定。有关更多信息,请参见配置和元数据支持。