使用过WCF的童鞋们都很清楚,绑定是必须的。我将这些绑定总结了下。

一、标准绑定简要说明

1.basicHttpBinding

基于WS-I Basic Profile 1.1 的web服务,所需的.Net Framework版本为 3.0 以上。

2.wsHttpBinding

针对改进的web服务的绑定,包括WS-Security,WS-Transaction等元素,所需的.Net Framework版本为 3.0 以上。

3.wsDualHttpBinding

支持双工通信的HTTP绑定,所需的.Net Framework版本为 3.0 以上。

4.webHttpBinding

支持REST/POX服务的绑定,使用XML/JSON序列化,所需的.Net Framework版本为 3.0 以上。

5.netTCPBinding

使用TCP传输协议在跨主机的局域网内使用,支持可靠性、事务、安全等特性,并且该绑定被特别的优化来支持WCF系统。但是,使用该绑定需要确保通信双方都基于WCF构建,这里并不符合SOA的原则,所需的.Net Framework版本为 3.0 以上。

6.netNamedPipeBinding

支持和netTCPBinding大致相同的特性,但由于使用命名管道进行通信,所以通信不能跨越主机,所需的.Net Framework版本为 3.0 以上。

7.netMsmqBinding

使用微软消息队列(MSMQ)协议来进行异步脱机的消息交互,所需的.Net Framework版本为 3.0 以上。

8.netPeerTCPBinding

使用P2P协议在网格中进行消息交互,所需的.Net Framework版本为 3.0 以上。

9.msmqIntegrationBinding

该绑定可以用来在WCF消息和MSMQ消息中进行转换,所需的.Net Framework版本为 3.0 以上。

10.wsFederrationHttpBinding

该绑定支持使用了联合安全机制的web服务,所需的.Net Framework版本为 3.0 以上。

11.ws2007HttpBinding

该绑定继承自wsHttpBinding,其主要设计目的是为了支持2007年新定制的WS标准,所需的.Net Framework版本为 3.5以上。

12.ws2007FederationHttpBinding

该绑定继承自wsFederationHttpBinding,和ws2007HttpBinding一样。其设计目的是为了支持2007新定制的WS标准,所需的.Net Framework版本为 3.5以上。

二、如何选择绑定

如何选择绑定是编写WCF程序的一个比较重要的话题。绑定的选择包含了很多因素,包括消息传输的可靠性,传输模式是否跨进程、主机、网络,传输模式的支持、安全性、性能等多个方面。而从本质上来看,绑定具有的这些特性源于其使用的网络协议和编码器。

绑定名称   网络协议 编码器 可交互性
basicHttpBinding HTTP/HTTPS Text,MTOM 可交互
wsHttpBinding HTTP/HTTPS Text,MTOM 可交互
WSDualHttpBinding HTTP Text,MTOM 可交互
webHttpBinding HTTP/HTTPS XML,JSON 可交互
netTcpBinding TCP 二进制编码器 不可交互
netNamedPipeBinding IPC 二进制编码器 不可交互
NetMsmqBinding MSMQ 二进制编码器 不可交互
netPeerTCPBinding P2P 二进制编码器 不可交互
msmqIntergrationBinding MSMQ 二进制编码器 可交互
wsFederationHttpBinding HTTP/HTTPS Text,MTOM 可交互
ws2007HttpBinding HTTP/HTTPS Text,MTOM 可交互
ws2007FederationHttpBinding HTTP/HTTPS Text,MTOM 可交互

MTOM(Message Transmission Optimization Mechanism),是W3C的MTOM的消息传输优化机制,有效地发送的二进制数据和从Web服务方法。将消息传输优化机制
(MTOM) 消息编码与WSHttpBinding
一起使用。MTOM是一种机制,用来以原始字节形式传输包含SOAP消息的较大二进制附件,从而使所传输的消息较小。

所有net开头的都不支持交互

WCF的交互可以分为下列几种情况。

1.跨越主机进程交互

2.跨越应用程序域但在同一进程内交互。

3.在同一程序域内交互。

绑定更详细的特点总结在下一篇中...

OK  说完了,补充一点:

.NET技术交流群 199281001 .欢迎加入。

觉得本文对你有所帮助,就点右下角推荐吧,谢谢。

作者:gaobing
提示:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

WCF中的标准绑定的更多相关文章

  1. WCF 通讯标准绑定

    WCF 通讯标准绑定 一.预定义标准绑定 标准绑定 说明 BasicHttpBinding BasicHttpBinding 绑定用于最广泛的互交操作,针对第一代Web服务,所使用的传输协议是HTTP ...

  2. 每日分享!~ JavaScript中面试基础--1,数组检测的方式 2.传统事件绑定和W3C标准绑定事件的区别~

    javaScript 那些方式中检测数据类型 typeof typeof isNaN // 结果是function 检测数组的几种方式 instanceof arr instanceof Array( ...

  3. WCF标准绑定以及传输协议与编码格式

    WCF 定义了9 种标准绑定: 基本绑定(Basic Binding) 由BasicHttpBinding类提供.基本绑定能够将WCF服务公开为旧的ASMX Web服务,使得旧的客户端能够与新的服务协 ...

  4. WCF 服务编程 - 常用绑定

    WCF  定义了5中常用的绑定. 一. 绑定 1.基本绑定: 对应于BasicHttpBinding类.基本绑定能够将WCF服务公开为传统的ASMX Web服务,使得原客户端能够与新的服务协作.如果客 ...

  5. 跟我一起学WCF(12)——WCF中Rest服务入门

    一.引言 要将Rest与.NET Framework 3.0配合使用,还需要构建基础架构的一些部件.在.NET Framework 3.5中,WCF在System.ServiceModel.Web组件 ...

  6. 跟我一起学WCF(10)——WCF中事务处理

    一.引言 好久没更新,总感觉自己欠了什么一样的,所以今天迫不及待地来更新了,因为后面还有好几个系列准备些,还有很多东西需要学习总结的.今天就来介绍下WCF对事务的支持. 二.WCF事务详解 2.1 事 ...

  7. [No0000126]SSL/TLS原理详解与WCF中的WS-Security

    SSL/TLS作为一种互联网安全加密技术 1. SSL/TLS概览 1.1 整体结构 SSL是一个介于HTTP协议与TCP之间的一个可选层,其位置大致如下: SSL:(Secure Socket La ...

  8. WCF(五) 深入理解绑定

    适用于本机WCF-WCF交互性能最佳的绑定: 允许跨主机,但只能用于部署同一台主机上,不能访问命名管道 netNamePipeBinding总结 一 WCF与SOA SOA是一种通过为所有软件提供服务 ...

  9. 浅议Grpc传输机制和WCF中的回调机制的代码迁移

    浅议Grpc传输机制和WCF中的回调机制的代码迁移 一.引子 如您所知,gRPC是目前比较常见的rpc框架,可以方便的作为服务与服务之间的通信基础设施,为构建微服务体系提供非常强有力的支持. 而基于. ...

随机推荐

  1. web前端性能意义、关注重点、测试方案、优化技巧

    1.前段性能的意义 对于访问一个网站,最花费时间的并不是后端应用程序处理以及数据库等消耗的时间,而是前端花费的时间(包括请求.网络传输.页面加载.渲染等).根据web优化的黄金法则: 80%的最终用户 ...

  2. 鼠标滚动插件smoovejs和wowjs

    置顶文章:<纯CSS打造银色MacBook Air(完整版)> 上一篇:<图片ping.JSONP和CORS跨域> 作者主页:myvin 博主QQ:851399101(点击QQ ...

  3. Node服务一键离线部署

    背景说明 项目测试通过,到了上线部署阶段.部署的机器安全限制比较严格,不允许访问外网.此外,没有对外网开放ssh服务,无法通过ssh远程操作. 针对上面提到的两条限制条件,通过下面方式解决: 无法访问 ...

  4. Dropbox的可用Hosts文件

    108.160.167.203 www.dropbox.com 108.160.167.203 dropbox.com 108.160.165.211 dl-client677.dropbox.com ...

  5. Orchard 刨析:Logging

    最近事情比较多,有预研的,有目前正在研发的,都是很需要时间的工作,所以导致这周只写了两篇Orchard系列的文章,这边不能保证后期会很频繁的更新该系列,但我会写完这整个系列,包括后面会把正在研发的东西 ...

  6. 前端开发之Chrome插件

    Postman - REST Client Postman是Ajax开发的神器,对于Restful开发方式特别有帮助,可以用来模拟各种请求来测试API的正确性,比如用来模拟Ajax请求.它还支持认证, ...

  7. 0505-NABCD模型、视频

    1.确定选题. 应用NABCD模型,分析你们初步选定的项目,充分说明你们选题的理由. 录制为演说视频,上传到视频网站,并把链接发到团队博客上. 截止日期:2016.5.6日晚10点 NABCD模型: ...

  8. try throw catch异常处理机制

    /*本程序实现分块查找算法  又称索引顺序查找     需要注意的是分块查找需要2次查找  先对块查找  再对块内查找    2013.12.16    18:44*/ #include <io ...

  9. CSS3中的counter和content属性,一些简单的内容显示就不需要JS去实现了

    HTML的代码 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www ...

  10. 用freemarker生产静态页面

    FreeMarker概述 * FreeMarker是一个模板引擎,一个基于模板生成文本输出的通用工具,使用纯Java编写     * Template + data model = output    ...