- 2
- 0
- 约1.8万字
- 约 88页
- 2018-11-17 发布于浙江
- 举报
WCF开实战教程
WCF开发实战系列教程
1:创建第一个WCF服务
在这个实战中我们将使用DataContract,ServiceContract来构建WCF服务,并使用VS2008内置的“WCFSVCHost”运行我们创建的WCF服务,并使用“WCF测试客户端”来测试我们创建的服务。在此WCF服务中我们将建立一个关于Book的服务,并实现对Book的添加、删除和检索操作。
第一步:创建“WCF服务库”“文件(F)”-“新建项目(P)...”打开新建项目对话框。在左侧的“项目类型”中选择“WCF”,然后再在右侧的“模板”中选择“WCF服务库”。在下面的“名称”文本框中,填写我们要创建的WCF服务库的项目名称“Services”。
《图1》点击确定,会创建出我们的WCF服务库项目,在解决方案中会自动为我们生成两个类文件“IService.cs”和“Service.cs”。
《图2》这两个类文件是两个WCF示例文件,对我们开发没有什么用处,现在我们删掉这两个文件。
第二步:创建Book实体类在“解决方案窗口”中,我们右击Services项目名,选择“添加”,再单击“类”
《图3》在弹出的“添加新项”窗口中,选择“类”,并在“名称”文本框中写入项名称“Book.cs”。
《图4》
第三步:为Book实体类编写代码using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Runtime.Serialization;
namespace Services{????[DataContract]??? public class?Book??? {????????[DataMember]??????? public string?BookNO;????????[DataMember]??????? public string?BookName;???????[DataMember]??????? public decimal?BookPrice;??? }}为了保证此类在WCF调用中能够被序列化,我们在Book类上面加入[DataContract]标签,在每个需要序列化的成员变量上加入[DataMember]标签。这两个标签在使用的进候需要导入using System.Runtime.Serialization命名空间。到此为至,我们创建完了需要在服务中传输的复杂的数据类型Book。
第四步:创建服务接口创建服务接口,声明对外发布的类和方法。在“解决方案窗口”中,我们右击Services项目名,选择“添加”,再单击“类”
《图3》在弹出的“添加新项”窗口中,选择“类”,并在“名称”文本框中写入项名称“IBookService.cs”。
《图5》在此类文件中我们编写服务接口,代码如下:using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.ServiceModel;
namespace Services{???[ServiceContract]??? public interface?IBookService??? {????????[OperationContract]??????? void?AddBooks(Book book);???????[OperationContract]????????ListBook GetAllBooks();????????[OperationContract]??????? void?RemoveBook(string id);??? }}在IBookService接口上面,我们定义了[ServiceContract]标签,此标签代表此接口及实现此接口的类都是对外发布的Service类,在每个需要对外发布的方法上都加上[OperationContract]标签,以使外部可以访问到此方法。[ServiceContract]和[OperationContract]这两个标签需要导入using System.ServiceModel命名空间。
第五步:创建实现服务接口的类实现我们上面声明的服务接口,实现对Book的添加、删除和检索的具体功能。在“解决方案窗口”中,我们右击Services项目名,选择“添加”,再单击“类”
《图3》在弹出的“添加新项”窗口中,选择“类”,并在“名称”文本框中写入项名称“BookService.cs”。
《图6》
您可能关注的文档
- VDA电池标准-AG20121229.doc
- UWB室内定位系统整体解方案介绍.docx
- Vector-CNoe8.2基础操作教程.doc
- VB程序设课件(全套).ppt
- VIP客人等级划分、接待准及各部门操作流程.doc
- VHP气化过氧氢灭菌系统.docx
- VIP客户感恩谢会活动方案.doc
- VI设计教案完整版).doc
- VITEK-2-COMPAT使用者手册2.pdf
- VIP客户务管理2.ppt
- EMI滤波器分立元件寄生参数消除技术研究.pdf
- 基于协议传输系统项目要求书:修改履历与核心要素.pdf
- 基于区块链企业供应链平台数据字典及变更记录.pdf
- 塔河油田YT2井区三叠系滚动开发产能建设方案油藏工程.pdf
- 电路与电子技术关键参数分析及计算.pdf
- 2026年高考化学二轮复习:专题15 化学实验基础(复习讲义)(原卷版及解析).docx
- 2026年高考化学二轮复习:专题16 大题突破——化学实验综合(专题专练)(原卷版及解析).docx
- 2026年高考化学二轮复习:专题05 元素及其化合物的性质与应用(复习讲义)(原卷版及解析).docx
- 2026年高考化学二轮复习:专题05 元素及其化合物的性质与应用(复习讲义)(原卷版).docx
- 杭州市(2025年)法官检察官遴选试题及答案.docx
原创力文档

文档评论(0)