.net wcf 概念介绍

1.概念

Windows Communication Foundation(WCF)是由微软发展的一组数据通信的应用程序开发接口,可以翻译为Windows通讯接口。它是.NET框架的一部分,由 .NET Framework 3.0 开始引入。

WCF的终结点有三个要素组成,分别是地址(Address)、绑定(Binding)和契约(Contract),简记可写成Endpoint = ABC。
 地址:地址决定了服务的位置,解决了服务寻址的问题。
 绑定:绑定实现了通信的所有细节,包括网络传输、消息编码,以及其他为实现某种功能对消息进行的相应处理。绑定的类型包括BasicHttpBinding、WsHttpBinding、NetTcpBinding等。
 契约:契约是对服务操作的抽象,也是对消息交换模式以及消息结构的定义。

 

2.契约

WCF 的基本概念是以契约(Contract) 来定义双方沟通的协议,契约必须要以接口的方式来体现,而实际的服务代码必须要由这些合约接口派生并实现。契约分成了四种:
数据契约 (Data Contract),订定双方沟通时的数据格式。服务契约 (Service Contract),订定服务的定义。操作契约 (Operation Contract),订定服务提供的方法。消息契约 (Message Contract),订定在通信期间改写消息内容的规范。
如下图,解释了契约:

 

 

 

3.绑定

由于 WCF 支持了 HTTP,TCP,Named Pipe,MSMQ,Peer-To-Peer TCP 等协议,而 HTTP 又分为基本 HTTP 支持 (BasicHttpBinding) 以及 WS-HTTP 支持 (WsHttpBinding),而 TCP 亦支持 NetTcpBinding,NetPeerTcpBinding 等通信方式,因此,双方必须要统一通信的协议,并且也要在编码以及格式上要有所一致。

 基本绑定(BasicHttpBinding)

对应BasicHttpBinding类,能够将WCF服务公开为传统的ASMX Web服务,是以前就的程序能够使用现在的WCF服务。在实际开发中一个WCF服务可能会给不同的程序调用,如给Java的程序调用,给Flex的程序调用等,那么采用BasicHttpBinding最合适不过了

TCP绑定(NetTcpBinding)

对应与NetTcpBinding类,TCP绑定使用TCP协议在Intranet中跨机器的通信,注意这里是Intranet而非Internet。支持多种特性,包括可靠性、事务性、安全性、以及WCF之间通信的优化。前提是要求客户端与服务端都必须使用WCF
---------------------
作者:林夜星辰
来源:CSDN
原文:https://blog.csdn.net/TaLinBoy/article/details/59067602
版权声明:本文为博主原创文章,转载请附上博文链接!

posted @ 2019-05-07 09:08  华翎科技  阅读(961)  评论(1)    收藏  举报