当前位置:  开发笔记 > 开发工具 > 正文

如何为WCF编写基于套接字的自定义传输

如何解决《如何为WCF编写基于套接字的自定义传输》经验,为你挑选了1个好方法。

我有一个移动平台,我正在尝试编写一些通信代码.

该平台提供基于标准套接字功能的专有通信机制.基本上,平台的套接字API看起来与标准的Windows套接字API完全相同,除了每个函数都有前缀.

我想使用WCF从我的消费应用程序中抽象出Sockets API的复杂性,但是我很难找到足以描述需要编码的所有部分的资源.

任何人都可以推荐一个好的起点,或者提供一个描述为WCF编写自定义Socket传输的必要条件吗?理想情况下,我希望能够在此传输机制上使用HttpBinding.

谢谢!



1> tomasr..:

我整理了一些资源列表,用于编写可能有用的WCF传输通道.不幸的是,并非所有链接都仍处于活动状态,但大多数链接都在那里并且有一些有用的东西.

我还简要介绍了一些部分如何组合在一起,这可能会有所帮助.

我不太明白你的问题:你提到你想在你的交通工具上运行HttpBinding.您是说要在自定义套接字API之上使用WCF http传输通道而不是常规Windows套接字API吗?

如果是这样,那么不,这将因各种原因无效.其中之一是绑定和通道实际上不是直接绑定在一起,而是绑定定义(即包含在其中的绑定元素)控制如何在运行时为您的服务/客户端创建通道堆栈.

所以基本上,在编写自定义传输通道时,您将创建自己的自定义TransportBindingElement派生类,您可以在自定义绑定中使用它来使用您自己的传输通道而不是默认传输通道之一(如HttpTransport).但是,请注意,传输通道无论如何都是通道堆栈的底部(即它下面没有任何内容),因此无论如何都无法将HttpTransport层叠在自定义传输之上(即使API限制不存在) .

换句话说,如果你想说HTTP,你需要将HTTP内容烘焙到你的自定义渠道实现中.但是,如果您公开正确的通道形状,则没有什么可以阻止您在自己的通道上使用其余的默认basic/ws http绑定.

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有