首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

WCFBinding模型之六(完结篇):从绑定元素认识系统预定义绑定

之所以将此绑定命名为BasicHttpBinding,很大程度上缘于它仅仅包含一些最基本用于消息通信元素。 1....WsHttpBinding对事务支持。...下面的代码中,我们通过另一个构造函数设定WsHttpBinding对可靠会话支持(第二个参数代表是否支持可靠会话)。...从对于传输协议支持来看,它们都就是基于HTTP或者HTTPS绑定;从对标准支持看来,BasicHttpBinding提供对WS-BP 1.1支持WsHttpBinding和WsDualHttpBinding...命名管道本身可以支持跨机器通信,而在WCF中对NetNamedPipeBinding作了更加严格限制,使其只能用于同一台机器跨进程通信(IPC)。

886100

WCF系列教程之WCF服务配置

,来进行设置,这充分体现了WCF伸缩性和自定义性。...4、endpoint节点:该节点指定用于公开服务终结点绑定、协定和地址属性,与WCF所有通信是通过该服务终结点进行,利用终结点,WCF服务可以访问WCF提供功能。...(2)、binding:设置与终结点通信通信方式,通信方式分为两种,一种是系统提供绑定类型,另一种是用户自定义绑定类型。...指定绑定确定传输协议类型、安全和使用编码,以及是否支持或启用可靠会话、事务或。 (3)、bindingConfiguration:一个字符串,指定实例化终结点时所使用绑定绑定名称。...如上图中采用wsHttpBinding,则bindingConfiguration名称对应bindings下wsHttpBinding名称为myBinding绑定。 ? ?

1.3K60
您找到你想要的搜索结果了吗?
是的
没有找到

使命必达: 深入剖析WCF可靠会话(上)

在《实例篇》给出例子中,实际上是通过对终结点绑定进行相应配置让整个消息交换过程在一个可靠会话中进行,进而实现可靠消息传输目的。...FlowControlEnabled:该属性指示可靠会话是否已启用控制(Flow Control)。控制是可靠会话实现一种机制,目的是确保发送方所发送消息数不超过接收方可处理消息数。...二、为系统绑定可靠会话进行设置 在众多系统绑定中,有很大一部分都为可靠会话提供支持,比如WSHttpBinding、WS2007HttpBinding、NetTcpBinding、WSFederationHttpBinding...我们可以通过编程方式开启或者关闭终结点使用除WSDualHttpBinding之外其他系统绑定(限于支持可靠会话系统绑定可靠会话开关,以及设置InactivityTimeout和Ordered...但是,如果套餐不符合您胃口,你应该查看菜单点你喜欢菜肴。自定义绑定给了你最大自由度,是能能够根据具体通信环境自由组合需要绑定元素。关于如何为自定义绑定可靠会话进行设置,敬请关注《下篇》。

69160

菜菜从零学习WCF三(配置服务)

在其中可以定义和自定义如何向客户端公开服务,包括指定可以找到服务地址、服务用于发送和接收消息传输和消息编码,以及服务需要安全类型。   ...--binding.通常,指定一个类似WsHttpBinding系统提供绑定,但也可以指定一个用户定义绑定,指定绑定确定传输协议类型、安全和使用编码,以及是否支持或启用可靠会话、事务或。   ...绑定最起码必须指定要使用传输(如Http或TCP)。还可以通过绑定来设置其他特征,如安全和事务支持。   绑定信息可能非常基本,也可能非常复杂。...--WSHttpBinding:一个可互操作绑定,适用于连接到复合WS_*协议终结点。   ...9个binding之一, 比如是basicHttpBinding,也可以自定义customBinding。

77610

利用WCF改进文件流传输三种方式

WCF中引入了一种专门针对数据流进行优化编码MTOM模型。下面我们使用编码模型和调用模型三种方式来改写文件传输,以提高WCF应用程序性能。...这种编码是为那些包含大量二进制数据SOAP消息而做,它是把数据作为SOAP消息附件而添加。所以利用这种编码在传输信道之间传输可以显著提高传输性能。...配置信息定义了双方通信终结点、绑定、契约行为及其他配置如安全,可靠性等。...="Mtom" textEncoding="utf-8" > 注意:在这种方式下使用同步和异步方法没有明显差别,后来在分析了...这种方法内部处理中使用线程池中一个线程接管这个调用,程序可以获得异步调用返回信息而继续向前执行。 WCF编程模型中采用了一种让同步传输中使用异步回调方式来提高应用程序响应。

1.3K60

WCF技术剖析之九:服务代理不能得到及时关闭会有什么后果?

数据报信道(Datagram Channel) WCF通过信道栈实现了消息编码、传输及基于某些特殊功能对消息特殊处理,而绑定对象是信道栈缔造者,不同绑定类型创建出来信道栈具有不同特性。...就对会话支持来讲,我们可以将信道分为以下两种: 会话信道(Sessionful Channel):会话信道确保客户端和服务端之间传输消息能够相互关联,但是信道错误(Fault)会影响后续消息交换...上面讲的是对最大会话限制,实际也可以说成是对最大会话信道限制,那么对于非会话信道是否也有此限制呢?...实践出真知,照例通过具体例子来说明问题。我们知道绑定是信道创建者,信道特性通过组成绑定元素(绑定元素)决定,所以信道对会话支持特性也不例外。...为了验证在非会话信道情况下,WCF最大并发会话限制是否存在,我们对上面的代码稍加修改,在创建WsHttpBinding时候,将安全模式设为SecurityMode.None(当然,在进行服务寄宿时候

48320

WCF系统内置绑定列表与系统绑定支持功能

WCF系统内置绑定列表 绑定 配置元素 说明 传输协议 编码格式 BasicHttpBinding 一个绑定,适用于与符合 WS-Basic ProfileWeb...此绑定使用HTTP作为传输协议,并使用文本/XML作为默认消息编码 HTTP/HTTPS Text,MTOM WSHttpBinding 一个安全且可互操作绑定,适合于非双工服务约定...SOAP媒介进行通信 HTTP Text,MTOM WSFederationHttpBinding 一个安全且可互操作绑定支持WS联合协议并使联合中组织可以高效地对用户进行身份验证和授权...并支持联合安全性 HTTP/HTTPS Text,MTOM NetTcpBinding 一个安全且经过优化绑定,适用于WCF应用程序之间跨计算机通信 TCP Binary...WCF各系统绑定支持功能 绑定名称 传输性安全 消息级安全 WS*兼容性 WS*事务支持 持久可靠消息传送 可靠会话 性能 请求/响应 单向 双工 basicHttpBing √ √ √

61210

WCF服务上应用protobuf

虽然是二进制数据格式,但并没有因此变得复杂,开发人员通过按照一定语法定义结构化消息格式,然后送给命令行工具,工具将自动生成相关类,可以支持java、c++、python等语言环境。...在官方文档中也提到,protobuf并不太适合来作大数据处理,当业务消息超过1M时,就应该考虑是否应该用另外替代方案。...借助于WCF这样网络编程框架,然后结合protobuf这样序列化框架,网络编程中技术基础设施层面的东西就给我们解决得差不多了,我们可以真正只关注于业务实现。...protobufdotNet实现protobuf-net, 支持WCFDataContact,WCF程序几乎不需要什么修改就能使用。...一个最小可以工作例子就是protobuf-net提供(client, server),它使用是共享契约方式,通过WCF配置方式,添加一个Endpoint-behavior,引用一个自定义WCF

74160

2019-2-13-wcf入门(15)

不同绑定能够支持wcf服务功能也不同。作为入门教程,这里主要介绍下有哪些常见系统绑定,以及其支持功能和适用场景。...WSHttpBinding:一个安全且可互操作绑定,适合于非双工服务约定,支持会话,可靠会话 NetNamedPipeBinding:一个安全、可靠且经过优化绑定,适用于 WCF 应用程序之间本机通信...,支持会话 NetMsmqBinding: 一个排队绑定,适用于 WCF 应用程序之间跨计算机间通信,支持会话, 非双工 NetTcpBinding: 一个安全且经过优化绑定,适用于 WCF 应用程序之间跨计算机通信...各层绑定元素参见下图 另外也可以参见2019-2-12-wcf入门(14) - huangtengxiao示例,其中使用自定义绑定模拟了一个不稳定信道。 ?...小结 我们研究了绑定,其特点有 可以配置WCF服务可以实现功能 参考链接: Windows Communication Foundation 绑定概述 - Microsoft Docs 2019-2-

33830

WCF配置文件与文件下载之坎坷路

之前还以为自己很懂了…… 一、WCF文件配置       为了不重蹈覆辙,这次争取把他整懂整透(当然这才是入门而已)。WCF很强大,它强大跟它配置有很大关系,所以我首先要先把它配置搞懂。...—也可以自定义binding元素,如. --> 配置节中,WCF宿主程序可以通过配置文件找到这些定义服务并发布这些服务。...然而,如果需要指定服务在执行方面的相关特性时,就必须定义服务behavior。在WCF中,定义behavior就可以设置服务运行时属性,甚至于通过自定义behavior插入一些自定义类型。...由于AddServiceEndpoint指定是相对地址,所以WCF会根据绑定采用传输协议在ServiceHost基地址列表中寻找与之匹配基地址,相对地址与基地址组合确定终结点绝对地址。

1.1K70

系统上线后WCF服务最近经常死掉原因分析总结

,这种方式其实和上面那种大同小异,也是可以封装,系统中暂且就使用的上面的方式。...,系统默认链接数比较小   如果采用netTcp绑定,而在windows7中,并发连接数默认是10。...如果要考虑到大量并发情况下,伪随机数可能确实有一些问题,不过,这个应该也不难解决,自己另外写一个类似伪随机数算法,只要保证生成指定范围内不重复数字(或字符)就可以了。...总结  暂时这三种方式有效地防止了WCF服务再次挂掉,至少最近几天服务一直在稳定运行,没有太大异常,很是让人欣慰。不知道针对WCF服务处理是否还有其他方式,也让博客园大牛们来指点一二吧。...作者:aehyok 出处:http://www.cnblogs.com/aehyok/ 感谢您阅读,如果您对博客所讲述内容有兴趣,那不妨点个推荐吧,谢谢支持:-O。

97841

WCF中关于可靠会话BUG!!

WCF可靠会话编程有一定了解的人应该知道,我们可以使用 DeliveryRequirementsAttribute 可以指示WCF确认绑定提供服务或客户端实现所需功能。...如果在从应用程序配置文件加载服务说明或在代码中以编程方式生成服务说明时检测到 DeliveryRequirementsAttribute 属性,则 WCF 会验证所配置绑定,并支持该属性指定所有功能...例如,您服务可能要求绑定支持队列。...使用 DeliveryRequirementsAttribute 可以WCF 确认是否满足下列要求: QueuedDeliveryRequirements 属性指定绑定必须满足队列要求。...RequireOrderedDelivery 属性指示绑定是否必须支持有序消息传递。 TargetContract 属性指示要求所适用类型。

654110

快速入门系列--WCF--01基础概念

当然,个人认为WCF已足够强大,并且其管道模式有极强扩展性,可以通过自定义绑定满足绝大部分需求。...从基础架构角度上看,WCF可以分为服务模型层和信道层两个层次,服务模型层建立在信道层基础是上,而信道层就是通过本节即将介绍binding绑定创建,注意这儿绑定与.NET很多地方绑定概念不同(例如最常见数据绑定...此外,也可以建立自定义绑定,将框架提供绑定元素进行重新组合,更有甚者,可以自定义绑定元素,不过这部分内容使用场景非常少。...最后,提供一个简单自定义绑定配置作为参考,其组合了传输、编码和安全3个绑定元素,前两者是必选项,且必须按照顺序构建。...最后,分享一个好玩东西,就是在微信中可以搜索微软"小冰"(刚截稿前对面的程序媛告诉,挺逗,能挖掘你内心哦),然后就可以在编码无聊、寂寞空虚时…你懂得,哈哈! 参考资料: [1]蒋金楠.

998100

C# WCF服务

1:什么是WCFWCF(Windows Communication Foundation)是由微软开发一系列支持数据通信应用程序框架,可以翻译为Windows 通讯开发平台。...WCF是.Net框架中技术,用来创建面向服务应用程序,交换不同通信方案里消息,以及执行服务操作生成工作WCF应用程序由三部分组成 - WCF服务,WCF服务主机和WCF服务客户端。...即使对于WCF和ASMX而言,虽然两者都使用了SOAP,但基于WCF开发应用程序,仍然可以直接与ASMX进行交互。 4:可扩展性。 WCF提供可扩展性,可以支持出新web服务标准。...支持 (WsHttpBinding),而 TCP 亦支持 NetTcpBinding,NetPeerTcpBinding 等通信方式。...绑定WCF支持多种类型,如 basicHttpBinding,WSDualHttpBinding,WSHttpBinding绑定,而Web服务仅支持SOAP或XML。

87520

WCF之旅(1):创建一个简单WCF程序

为了使读者对基于WCF编程模型有一个直观映像,将带领读者一步一步地创建一个完整WCF应用。本应用功能虽然简单,但它涵盖了一个完整WCF应用基本结构。...WCF广泛采用基于自定义特性(Custom Attribtue)声明式编程模式,我们通过在接口上应用System.ServiceModel.ServiceContractAttribute特性将一个接口定义成服务契约...WCF是一个基于消息通信框架,采用基于终结点(Endpoint)通信手段。终结点由地址(Address)、绑定(Binding)和契约(Contract)三要素组成,如图3所示。...WCF中具有一系列系统定义绑定,比如BasicHttpBinding、WsHttpBinding、NetTcpBinding等,《WCF技术剖析(卷1)》第3章提供对绑定详细介绍; 契约(Contract...松耦合是SOA一个基本特征,WCF应用中客户端和服务端松耦合体现在客户端只须要了解WCF服务基本描述,而无须知道具体实现细节,就可以实现正常服务调用。

63821

x.509证书在WCF应用(WebIIS篇)

在上一篇"x.509证书在WCF应用(CS篇)"里,我们知道了如何在应用程序中,利用x.509证书来验证WCF消息安全(没看过朋友建议先看下,地址https://cloud.tencent.com...WCF宿主在IIS和普通应用程序里,原理虽然没什么不同,但在实际测试中发现,如果服务端与客户端都采用x.509证书来验证,服务端设置自定义验证客户端证书方法总是不起作用,无奈之下,只能在客户端采用了一种变相方法来验证客户端证书...,在IE7里始终被认为不信任证书(也许是makecert参数不对),导致在IE7里测试SSL时,总是显示"证书错误,导航已阻止"之类,所以在本例中,我们换一种方式,用windows2003自带证书服务来申请..."  x509FindType="FindBySubjectName" storeName="My"/>这一句指wcf服务启动时,先验证服务端是否在LocalMachine这个位置有一个SubjectName...在互联网环境下,这可能会给客户端使用带来麻烦,这时可以采用服务端用x.509方式验证,客户端用经典用户名/密码方式来验证,详情可参见http://www.cnblogs.com/fineboy/archive

1.1K50

WCF服务端运行时架构体系详解

WCF服务端架构体系又可以成为服务寄宿端架构体系。我们知道,对于一个基于某种类型服务进行寄宿只需要使用到一个唯一对象,那就是ServiceHost。...通过这段配置,三个基于WSHttpBinding终结点被添加。...如果读者对于信道层相关内容不是特别了解,请参考《WCF技术剖析(卷1)》第3章《绑定与信道栈》)。这两个信道监听器分别绑定到上述两个监听地址进行请求消息监听。...如果这6种消息筛选器依然不能满足你需求,你可以通过继承MessageFilter这个抽象类创建你自定义消息筛选器。...如果希望使用其他值,可以通过自定义Behavior形式覆盖掉默认值。

647100

默认终结点

对于最新版本WCF编程人员来说,你也可以采用无配置服务寄宿了,这主要得益于WCF提供默认终结点机制。...从上面的例子我们可以看到,对于自动创建四个默认终结点,如果采用基于HTTP协议地址,则采用BasicHttpBinding作为其终结点绑定;如果地址是基于TCP协议,作为终结点绑定则为NetTcpBinding...从上面给出关于这个方法定义我们可以知道这个方法是一个公有方法,可以在具体服务寄宿应用中被直接调用。...当这个方法被调用时候,WCF会按照我们之前介绍策略(为指定每一个基地址和服务实现契约组合添加一个终结点,终结点绑定类型决定于配置)进行默认终结点添加。...方法返回值表示添加默认终结点集合。 当ServiceHost在开启时候,WCF会检验其Description熟悉表示服务描述是否具有至少一个终结点。

74860

WCF技术剖析之三十一: WCF事务编程

至于WCF框架是否有能力对事物进行流转,按照怎样协议进行流转,则是通过绑定实现,现在我们首先看看怎样绑定具有事务流转能力。...既然TransactionFlowBindingElement实现了对事物流转,那么我们就可以根据某个绑定对象绑定元素集合中是否包含该元素判断绑定是否支持事务流转。...为此,写了如下一个简单方法,传入相应Binding对象,打印出相应绑定类型是否支持事务流转: 1: static void PrintTransactionFlowSupport(Binding...对于NetTcpBinding和NetNamedPipeBinding来说,我们可以通过属性TransactionFlow设置或者获取绑定是否支持事务流转开关,并通过TransactionProtocol...创建支持事务流转自定义绑定时候,你需要做仅仅是将TransactionFlowBindingElement添加到绑定元素集合中,并设置TransactionFlow和TransactionProtocol

68460
领券