WCF

WCF(Windows Communication Foundation):Windows通讯开发平台,WCF提供给了我们一种面向服务(SOA)的程序设计的解决方案

WCF提供了统一的通信模型:以前我们写通信可以是:TCP/UDP,Socket等这些方式,在WCF中被统一了。至于如何统一?这里先不说了。所以,当你在项目中同时使用了多种通信方式时,可以考虑使用WCF了。

以前没有接触过Web Service 开发接受WCF也不是难事,相信我!

这次,我们只做一点WCF的概述,更为详细的知识到后面再慢慢展开。边学习,边交流。

1. 打开VS 2010 -->file-->new Project ,选择C#下面的WCF,选择WCF Library。如下图:

2.此时有了IService 文件和一个Service 文件。Service文件实现的IService中的两个函数:GetData函数和GetDataUsingDataContract函数。至于这两个函数是干嘛的?想必不用说大家都能看懂的。之后详细说明他们的角色。这里也不修改类名和函数名了,方面起见。

3.按F5运行程序,此时打开了一个WCF 的一个测试 窗口。如下图:先测试GetData函数

测试结果:

同样的方法测试GetDataUsingDataContract函数:结果如下图

4.上面完成了对WCF的函数功能的简单测试,能说明的是Service正确地实现了IService。接下来我们需要将这个WCF部署到一个Web Site中。

在解决方案上面右击:New -->New Web Site 如下图:

修改web site项目中的Service.svc 文件里面的 Service="WcfFirstDemoServiceLib.Service1" (其中意思就是已命名空间加类名的方式指定service的名字)

 

 5.添加一个winForm程序 ,用它来调用WCF的函数。

6.给winForm 项目添加web 引用:

7.在Form1上面添加几个控件,然后再在Form1.cs中添加下列几行代码:

Form1.cs

8.Ctrl+F5 运行:

 

说明:这里只是概述WCF,所以全部在使用WCF的默认设置,也没有详细说明每一步的作用是什么。只是给出三个项目:项目1是WCF的库也是WCF功能核心。项目2是WCF的host用于向外界发布WCF提供的接口(:接口这里指提供了哪些函数可被调用)。项目3是WCF的客户端用于调用WCF。其实,这里已经隐约体现出一点点分布式软件架构的意思了:有专门提供功能实现的模块,有专门提供对外公开接口的模块,有专门作为调用的模块。

posted @ 2019-11-20 17:08  瘋孑  阅读(202)  评论(0编辑  收藏  举报