WCF Part 1 : Services ABC, 原文。
在正式介绍WCF之前,我们先温习一下服务的概念。服务通常至少有一个端点(Endpoint),但是也可以有多个,而一个客户端通常只能同一个端点进行通信。现在看来有点老掉牙的WebService只有一个端点,并且只能通过HTTP以及Text/XML进行通信,下图显示了一个拥有三个端点的服务,注意ABC。
关于WCF的ABC,也有博文讲到过(1, 2),但是你最需要记住的是:
- A 表示地址(Address)
- B 表示绑定(Binding)
- C 表示契约(Contract)
磨刀不误砍柴工,我们下面简要讲一下ABS:
- Address
每一个网站和webservice都拥有一个地址,比如:http://bloggingabout.net/ 或者 http://mydomain.com/stockquote.asmx. 因此,WCF也必须有一个地址,WCF能够使用基于以下协议的地址:- HTTP
- TCP
- NamedPipe
- Peer2Peer
- MSMQ
- Binding
绑定制定了服务通过什么形式访问。只要类比传输协议, encoding (text, binary, etc) 以及 WS-* 协议,像transactional支持以及可信任的消息队列。 - Contract
契约是由用户自己指定的东西,用于指定你可以提供什么样的服务。举例来说,通过邮政编码得到城市和街道信息的服务。
在下一篇文章中,我将讲述如何通过ABC创建一个服务。