欢迎来到天天文库
浏览记录
ID:33831229
大小:399.21 KB
页数:51页
时间:2019-02-28
《Windows Communication Foundation 入门.pdf》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、WindowsCommunicationFoundation入门(PartOne)前言:WCF是微软基于SOA(ServiceOrientedArchitecture)推出的.Net平台下的框架产品,它代表了软件架构设计与开发的一种发展方向,在微软的战略计划中也占有非常重要的地位。了解和掌握WCF,对于程序员特别是基于微软产品开发的程序员而言,是非常有必要的。对于WCF,笔者也是初窥门径,抱着学习的态度作这样的一个介绍。文中的内容主要参考了微软官方的文档、资料,以及众多介绍WCF的技术资料。这些资料主要都是英文,不便于国内程序员学习WCF。虽然本
2、人才疏学浅,却愿意作这样的介绍者。由于自己仅是一个初学者,英文的功底也不够深厚,所以文中难免会有疏漏之处。同时,我也希望在文中尽量表达出自己的一些心得与见解,这就不免增加了出现错误的可能性。此外,由于WCF至今仍未有正式的版本,文中相关的技术描述以及代码会根据版本的不同而发生变化,所以我也只能尽量对此给与一定的说明。本文会是多篇文章拼凑在一起的系列,说是系列,但并没有严格的渐进关系,只是整体上希望能有一个相对全面的WCF入门介绍。此外,笔者也希望能通过此文抛砖引玉,这样也能让我的WCF学习之旅更轻松一点。一、什么是WCF?根据微软官方的解释,WC
3、F(之前的版本名为“Indigo”)是使用托管代码建立和运行面向服务(ServiceOriented)应用程序的统一框架。它使得开发者能够建立一个跨平台的安全、可信赖、事务性的解决方案,且能与已有系统兼容协作。WCF是微软分布式应用程序开发的集大成者,它整合了.Net平台下所有的和分布式系统有关的技术,例如.NetRemoting、ASMX、WSE和MSMQ。以通信(Communiation)范围而论,它可以跨进程、跨机器、跨子网、企业网乃至于Internet;以宿主程序而论,可以以ASP.NET,EXE,WPF,WindowsForms,NTS
4、ervice,COM+作为宿主(Host)。WCF可以支持的协议包括TCP,HTTP,跨进程以及自定义,安全模式则包括SAML,Kerberos,X509,用户/密码,自定义等多种标准与模式。也就是说,在WCF框架下,开发基于SOA的分布式系统变得容易了,微软将所有与此相关的技术要素都包含在内,掌握了WCF,就相当于掌握了叩开SOA大门的钥匙。WCF是建立在.NetFramework2.0基础之上的,正式的版本应该会作为WindowsVista的核心部分而Release。然而,这并不代表WCF只能运行在WindowsVista下。只要安装了Win
5、FXRuntimeComponents,在WindowsXP和Windows2003操作系统下,仍然可以使用。VisualStudio2005中并没有包含WCF,但是当安装好了WinFXRuntimeComponents后,我们就可以在VisualStudio2005环境下开发和创建WCF的程序了。目前最新的WCF版本是February2006CTP,下载页面是:http://www.microsoft.com/downloads/details.aspx?FamilyId=F51C4D96-9AEA-474F-86D3-172BFA3B828B
6、&displaylang=en。使用WCF需要用到一些相关的工具,如SvcUtil.exe,所以还需要下载WinFXRuntimeComponents的SDK,其下载页面是:http://www.microsoft.com/downloads/details.aspx?FamilyId=9BE1FC7F-0542-47F1-88DD-61E3EF88C402&displaylang=en。安装SDK可以选择网络安装或本地安装。如果是本地安装,文件大小为1.1G左右,是ISO文件。安装了SDK后,在programfiles目录下,有microsof
7、tSDK目录。WCF是微软重点介绍的产品,因此也推出了专门的官方网站(http://windowscommunication.net),该网站有最新的WCF新闻发布,以及介绍WCF的技术文档和样例代码。二、WCF的优势在DavidChappell所撰的《IntroducingWindowsCommunicationFoundation》一文中,用了一个活鲜鲜的例子,来说明WCF的优势所在。假定我们要为一家汽车租赁公司开发一个新的应用程序,用于租车预约服务。该租车预约服务会被多种应用程序访问,包括呼叫中心(CallCenter),基于J2EE的租车
8、预约服务以及合作伙伴的应用程序(PartnerApplication),如图所示:呼叫中心运行在Windows平台下,是在.NetFra
此文档下载收益归作者所有