WCF:如何实现协议通道以应用自定义通道

时间:2010-04-01 16:12:41

标签: wcf

考虑以下代表WCF通道堆栈的图片:

alt text http://i.msdn.microsoft.com/ee672186.image001(en-us).jpg

我正在实现自己的频道,为此我已经实现了传输和编码层。现在我需要创建一个“协议通道”层,消息应该在编码层中创建之后和进入服务层之前传递。

我想我需要创建一个BindingElement,它实现了一些接口,然后将这些bindingElement添加到我的Binding中。但我能找到的所有文档都解释了如何实现传输和编码层......

有任何帮助吗? 感谢

1 个答案:

答案 0 :(得分:0)

据我记忆,它几乎是一样的,这意味着你实现了你提到的BindingElement,并覆盖BuildChannelFactory / BuildChannelListener方法以返回自定义协议通道的工厂/监听器。

不同之处在于您将使用BindingContext。BuildInnerChannelFactory()和BuildInnerChannelListener()方法将自定义通道工厂/侦听器层叠在堆栈下方的那些上(如你的运输渠道)。

这有意义吗?