WCF绑定元素具体应用知识介绍
创始人
2024-06-23 08:00:23
0

WCF开发工具的出现,对于开发人员来说具有非常大的作用。在这里我们将会为大家详细介绍一下有关WCF绑定元素的相关概念。那么对于初学者来说,大家可以通过这篇文章想、充分掌握这些应用技巧。#t#

从结构的角度讲,一个绑定对象有一系列绑定元素组成,每个绑定元素负责创建相应的信道。所以绑定元素几何的构成以及它们之间的先后顺序,决定了最终生成的信道栈中的信道组成已经它们位于栈中的先后顺序。WCF之所以在设计的时候将绑定和绑定元素分离开发,是基于灵活性、可扩展性考虑的。 #t#

在介绍信道和信道栈的时候我们说过,我们不可能、也不应该创建一个***的信道能够提供消息交换中的所有的功能,所以我们让一个信道只承载某个单一的功能,比如传输信道专注于网络传输,消息编码信到专注于消息的编码,WCF还定义了一一系列的信道,他们分别关注与安全、可靠传输和事务流转等等。这种信道组合的设计方式使得我们可以根据具体的需求来定制我们将要创建的信道栈,让它只具有我们必须的功能,而去除不必要的功能。

同理,我们可以根据具体实际需求,将必要的WCF绑定元素进行有序的组合,从而创建最能适合具体场景的绑定对象。由于信道可以分为必须的传输信道、消息编码信道和可选的基于某种WS-*协议实现的协议信道,与之相对地,我们的绑定元素可以分为传输绑定元素、消息编码绑定元素和协议绑定元素。

由于信道的实际创建者是信道管理器(信道工厂和信道监听器),所以绑定元素只需要实现对信道管理器的创建,而最终实现对具体信道的创建。所以绑定元素的最根本的功能就是实现对信道监听器和信道工厂的创建。这可以从所有WCF绑定元素的基类, System.ServiceModel.Channels.BindingElement的定义上看出来:

 

  1. public abstract class BindingElement   
  2. {   
  3. // Methods   
  4. protected BindingElement();   
  5. protected BindingElement(BindingElement elementToBeCloned);   
  6. public virtual IChannelFactory BuildChannelFactory
    (BindingContext context);  
  7. public virtual IChannelListener BuildChannelListener
    (BindingContext context) where TChannel : class, IChannel;   
  8. public virtual bool CanBuildChannelFactory
    (BindingContext context);   
  9. public virtual bool CanBuildChannelListener
    (BindingContext context) where TChannel : class, IChannel;   
  10. public abstract BindingElement Clone();   
  11. public abstract T GetProperty(BindingContext context) 
    where T : class;  

BindingElement的核心方法成员有两个:BuildChannelListener和BuildChannelFactory和CanBuildChannelListener

以上就是对WCF绑定元素的相关介绍。

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
各种千兆交换机的数据接口类型详... 千兆交换机有很多值得学习的地方,这里我们主要介绍各种千兆交换机的数据接口类型,作为局域网的主要连接设...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
范例解读VB.NET获取环境变... VB.NET编程语言的使用范围非常广泛,可以帮助开发人员处理各种程序中的需求,而且还能对移动设备进行...
规避非法攻击 用好路由器远程管... 单位在市区不同位置设立了科技服务点,每一个服务点的员工都通过宽带路由器进行共享上网,和单位网络保持联...
PHP新手之PHP入门 PHP是一种易于学习和使用的服务器端脚本语言。只需要很少的编程知识你就能使用PHP建立一个真正交互的...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...