欢迎来到天天文库
浏览记录
ID:26307976
大小:16.40 MB
页数:88页
时间:2018-11-26
《WCF开发实战教程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、WCF开发实战系列教程1:创建第一个WCF服务在这个实战中我们将使用DataContract,ServiceContract来构建WCF服务,并使用VS2008内置的“WCFSVCHost”运行我们创建的WCF服务,并使用“WCF测试客户端”来测试我们创建的服务。在此WCF服务中我们将建立一个关于Book的服务,并实现对Book的添加、删除和检索操作。第一步:创建“WCF服务库”“文件(F)”->“新建项目(P)...”打开新建项目对话框。在左侧的“项目类型”中选择“WCF”,然后再在右侧的“模板”中选择“W
2、CF服务库”。在下面的“名称”文本框中,填写我们要创建的WCF服务库的项目名称“Services”。..《图1》点击确定,会创建出我们的WCF服务库项目,在解决方案中会自动为我们生成两个类文件“IService.cs”和“Service.cs”。《图2》这两个类文件是两个WCF示例文件,对我们开发没有什么用处,现在我们删掉这两个文件。第二步:创建Book实体类在“解决方案窗口”中,我们右击Services项目名,选择“添加”,再单击“类”《图3》在弹出的“添加新项”窗口中,选择“类”,并在“名称”文本框中写入
3、项名称“Book.cs”。..《图4》第三步:为Book实体类编写代码usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Runtime.Serialization;namespaceServices{ [DataContract] publicclass Book { [DataMember] publicstring BookNO;
4、 [DataMember] publicstring BookName; [DataMember] publicdecimal BookPrice; }}为了保证此类在WCF调用中能够被序列化,我们在Book类上面加入[DataContract]..标签,在每个需要序列化的成员变量上加入[DataMember]标签。这两个标签在使用的进候需要导入usingSystem.Runtime.Serialization命名空间。到此为至,我们创建完了需要在服务中传输的复杂
5、的数据类型Book。第四步:创建服务接口创建服务接口,声明对外发布的类和方法。在“解决方案窗口”中,我们右击Services项目名,选择“添加”,再单击“类”《图3》在弹出的“添加新项”窗口中,选择“类”,并在“名称”文本框中写入项名称“IBookService.cs”。..《图5》在此类文件中我们编写服务接口,代码如下:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Servi
6、ceModel;namespaceServices{ [ServiceContract] publicinterface IBookService { [OperationContract] void AddBooks(Bookbook); [OperationContract] ListGetAllBooks(); [OperationContract] void RemoveBook(stringid);
7、 }}在IBookService接口上面,我们定义了[ServiceContract]..标签,此标签代表此接口及实现此接口的类都是对外发布的Service类,在每个需要对外发布的方法上都加上[OperationContract]标签,以使外部可以访问到此方法。[ServiceContract]和[OperationContract]这两个标签需要导入usingSystem.ServiceModel命名空间。第五步:创建实现服务接口的类实现我们上面声明的服务接口,实现对Book的添加、删除和检索的具体功能
8、。在“解决方案窗口”中,我们右击Services项目名,选择“添加”,再单击“类”《图3》在弹出的“添加新项”窗口中,选择“类”,并在“名称”文本框中写入项名称“BookService.cs”。..《图6》在此类文件中编写代码实现IBookService.cs服务接口。usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;using
此文档下载收益归作者所有