WCF学习总结——WCF体系结构以及基础概念

 WCF的体系架构

   WCF的体系基本上包括4个方面,分别为契约、服务运行时、消息和寄宿。

   契约(能干什么)

  契约属于一个服务公开接口的一部分,一个服务的契约,定义了服务器公开的服务方法、使用的传输协议、可访问的地址、可传输的消息格式等内容。

   服务运行时(怎么干)

   服务运行时定义了服务在运行时的具体行为。

       消息

       消息方面包含了消息的传输方式、消息的编码与解码,消息方面的内容基于属于服务边界以内的具体实现。具体的传递时限,必须符合在契约中定义的绑定协议。

       激活和宿主(在哪干)

       激活和宿主属于WCF程序的部署方式。一个WCF服务需要在一个可运行的程序中寄宿,常用的寄宿方式包括自寄宿、IIS寄宿、Windows激活服务、Windows服务、Com+组件等。(根据SOA的原则,激活和宿主类型的变化不会影响服务本身的特性和外部对该服务的访问)

WCF需要明白的基础概念

  1. 地址(Address)

  在WCF 框架中,每个服务都具有唯一的地址。在SOA系统中,其他服务和客户端通过服务的地址来对服务进行访问。一个服务的地址由一个URI来表示。

如:http://127.0.0.1:6789/CaculatorService

     http://127.0.0.1/WcfService/Caculator.svc

     https://127.0.0.1:6788/CaculatorService

   net.tcp://127.0.0.1:8888/CaculatorService

   net.msmq://localhost/Service或 net.msmq://[hostName]/public(private)/[QueueName]

     net.pipe://[hostName]/[Port]/[ServiceAddress]

  2. 绑定(Binding)

  绑定定义了服务与外部通信的方式。它由一组称为绑定元素的元素构成。这些元素组合在一起形成通信基础结构。

一个绑定包含以下内容:

  (1)       通信所使用的协议,如Http、TCP、P2P等;

  (2)       消息编码方式,如纯文本、二进制编码、MTOM等;

  (3)       消息安全保障策略;

  (4)       通信堆栈的其它任何要素。

  3. 契约(Contract)

  在WCF中一共包括4种契约:服务契约、数据契约、错误契约和消息契约。

  (1)       服务契约[ServiceContract]

   将多个相关的操作联系在一起,组成单个功能单元。

  (2)       数据契约[DataContract]

  数据类型的说明称为数据契约,服务使用的数据类型必须在元数据中进行描述,以使其他各方面可以与该服务进行交互操作。

  (3)       错误契约[FaultContract]

   错误类型的说明。

  (4)       消息契约[MessageContract]

  描述消息的格式。

  4. 终结点(EndPoint)

  终结点是用来发送或接收消息(或同时执行这两者操作)的构造,一个终结点有三个要素组成:Address、Binding、Contract。以SOA的思想来看,一个终结点就相当于服务的公共接口。

  5. 元数据(metaData)

  服务的元数据描述服务的特征,外部实体需要了解这些特赠以便与该服务进行通信。服务所公开的元数据包括XML构架文档(用于定义服务的数据协定)和WSDL文档(用于描述服务的方法)。启用元数据后,WCF通过检查服务及其终结点自动生成服务的元数据。

  6. 宿主(Host)

  服务必须承载于某个进程中,宿主是控制服务的生存期的应用程序。

转载于:https://www.cnblogs.com/cuier/archive/2010/12/29/1920389.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值