联系我们  |  网站地图  |  加入收藏  |  
首页 > 技术支持 > 知识库 > 软件知识 >  
软件知识
WCF简介

作者:mokuai     发布时间:2011-10-26 14:59     信息来源:未知     浏览:    

 

WCF简介

Windows Communication Foundation(WCF).NET Framework提供了一个能够编写代码, 以在组件, 应用程序和系统之间进行通信的基础. 通常应用程序通信的方式有很多种,但这些方式一般需要编码处理诸如通信协议, 兼容性, 连接故障等很的问题. WCF就是对应用程序之间的通信进行了封装, 大大降低了通信的难度.

WCF的设计是面向服务的.服务是指可以通过消息与之进行交互的一段代码. 服务提供一个或多个端点, 可将消息发送到这些端点。每个端点由一个地址、一个绑定和一个合同组成。

端点:

端点是WCF编程模型的和基础结构的核心. 通过WCF, 你可以编写提供端点的服务, 也可以编写与端点进行交互的客户端.

WCF服务端是一个公开终结点集合的程序, 每个终结点都是一个与外界通讯的入口.

WCF客户端是一个与一个或多个终结点交换消息的程序, 客户端还可以公开一个终结点, 从而以双工消息交换的模式从服务器接收消息.

端点结构

地址: 指定发送消息的目标位置. 是终结点驻留的网络地址(包括域名或IP, 端口).

绑定: 描述如何发送消息;是终结点与外界通讯的方式, 包括传输的协议(TCP, HTTP), 编码(文本, 二进制文件)以及安全要求(SSL, SOAP消息安全).

合同: 描述消息所包含的内容, 一般定义为.NET接口, 它本质上是操作有组织的消息集合, 这些操作具有基本的消息交换模式, 如单工,双工, 以及请求/应答.

WCF 运行时

WCF程序中, 所编写代码控制的只是一部分工作, 实际通信部分的工作都是由WCF运行时来完成. WCF运行时是一组复杂发送和接收消息的对象. : 格式化消息, 安全性, 使用各种传输协议传输和接收消息, 以及向适当的操作分发接收到的消息, 所有的这些操作都在WCF运行时种发生.

客户端运行时由ServiceHost.Open在后台创建. 客户端运行时由ChannelFactory在客户端创建.

信道是将消息发送至终结点和从终结点接收消息的核心抽象.

创建WCF程序

服务端: 建立WCF服务端时, 首先要定义用作服务的合同的.NET接口. 然后在.NET类中实行该接口并进行相应的配置.再在应用程序配置文件定义服务要提供的端点, 并为每个端点指定位置, 绑定及合同. 最后由WCF托管基础结构在应用程序中托管服务类型.服务类型被托管后, 客户端就可以检索其端点描述并开始与其集成.

客户端: 建立WCF客户端时,首先需要获得服务端的目标端点的描述. 该端点描述可以用于动态的创建一个类型代理. 然后可以针对类型代理编写代码, 通过向目标端发送相应的消息来访问服务.

程序配置文件. 各个端点都是在配置文件中描述的.

WCF 优点

应用程序间的具体通信问题都由WCF运行时处理了. WCF程序运行的时候会在服务端与客户端之间相应的Channel(信道?). 通过该Channel对客户端来说可以将服务端抽象为一个对象, 通过该对象就可以直接调用服务端通过合同暴露出来的方法; 对服务端来说, 客户端可以抽象为一个回调对象, 通过该对象就可以直接调用客户单通过回调合同暴露的的方法. 就这样, 服务端和客户端在对方运行的时候都被抽象成一个直接访问的对象.

 

EDM和订阅

 
010-82867550
010-82863904
Service@controlease.com
 

北京九思易自动化软件有限公司 版权所有 京公网安备11010802039233号京 ICP 备 18000243号
电话: 010-58731941 E-Mail: support@controlease.com
公司地址 :北京海淀区知春路甲48号盈都大厦B座18A  邮编 :100086