WCF是微软弄的一组数据通信的开发接口,即windows通讯接口。和TCP类似需要IP地址和端口号,服务端提供一些函数接口,客户端可进行调用,支持多个客户端。不太懂理论,直接看应用吧。
我的Winform程序A中定义了一个学校(School)类,其中学生(Student)的身高体重不断变化,并可新增或删除学生。现在我新建另一个Winform程序B,要实现以下简单功能:
1.B和A进行通讯连接,连接建立后程序A实例化一个School;
2.B可以发命令给A,对学生进行新增和删除工作;
3.B界面的文本框可以实时刷新A中School的学生的动态(身高,体重等变化);下面通过WCF实现:
首先建立winform程序A,右击项目添加类->WCF服务->命名->点击保存;
此时会生成两个cs文件,IService.cs和Service.cs,其中IService.cs定义了函数接口,Service中是函数的具体实现,如图:
<-IService.cs <-Service.cs
接口和函数写好后,要对WCF服务进行配置,打开app.config,如图:
首先是IP地址,图中1和2不一致,1是基地址(可写为localhost也可指定IP),2是客户端访问接口地址。includeexceptiondetailinFault设置为true,可以捕获通道异常,下面的是一些时长和接受缓存设置。
配置完成后,下面来开启服务:添加引用:
using System.ServiceModel; using System.ServiceModel.Description;View Code
开启服务:
ServiceHost server = new ServiceHost(typeof(HostInterface)); server.Open();View Code
服务端已经完成,运行程序A,新建客户端程序B,右击B项目,点击添加服务引用,在右图中输入服务地址(上述地址2),->转到->命名->确定;
->
如图表示添加成功,然后右击选择配置服务引用:
->
若接口中需要传递List类型,则按照图中配置:
标签:School,服务,机之,C#,示例,接口,WCF,cs,Winform From: https://www.cnblogs.com/cfsl/p/16922830.html