一、基本介绍
1、什么是WCF?
WCF(Windows Communication Eoundation,视窗通信基础)服务,是一组建立分布式系统的技术,系统组件通过网络相互通信。由 .NET Framework 3.0 开始引入,与 Windows Presentation Foundation 及 Windows Workflow Foundation 并行为新一代 Windows 操作系统以及 WinFX 的三个重大应用程序开发类库。
2、基础知识
在.net中,web服务的方法调用通常利用SOAP(简单对象访问协议)或REST(状态传输协议)体系结构。
SOAP使用标准化的基于XML封装数据格式;REST是个网络系统结构,用web传统请求/响应机制,如:GET、POST,不要求数据封装成特殊消息格式。
3、WCF web服务基础
每个WCF服务可以有一个或者多个端点。端点是WCF客户机连接WCF服务的路径,每个端点有三个关键组件——地址、绑定和协约
        地址表示服务的地址,包括协议(如http)和访问服务的网址
        绑定指定客户端如何与服务通信(如SOAP与REST等),还可以指定其他选项,如安全限制。
        协约是个接口,表示这个服务的属性与方法。服务协约使客户端可以和这个服务交互。
二、WCF几种通信方式:
1、简单对象访问协议(SOAP)
SOAP是平台独立协议,用XML进行远程调用,通常在HTTP协议上进行。其规范可以在www.w3org/TR/soap/查到。每个请求和响应封装成SOAP消息,即XML消息。大多数防火墙不限制HTTP通信流,因此,不同平台的计算机可以利用XML和HTTP发送与接收SOAP消息,而没什么限制。
2、表示状态转移协议(REST)
REST是一种实现Web服务的体系结构样式,通常称为REST Web服务。REST本身不是标准,但REST Web服务时通过Web标准实现的,服务中的每个方法用唯一的URL标示。这种Web服务可以在程序中使用,也可以直接在Web浏览器中使用。
REST Web服务可以代替SOAP Web服务,REST可以使用各种不同的格式返回数据,如XML、JSON、HTML,普通文本和媒介文件。
3、JavaScript对象标注(JSON)
JSON取代XML表示数据,是基于文本的数据互换格式,可以用JavaScript将对象标示成字符串标示的名/值对集合,经常使用AJAX应该对JSON不陌生。