建立WCF服务

我们在开发wcf时,一般用vs建立wcf项目,然后代码自动生成。但如果你想要真正了解全过程,不防,咱门今天晚上自己从零开始。

完成一个wcf的服务发布。

模拟场景:我们要建立一个全国文凭资源查询系统。用服务形式进行公开。

1.首先我们建立一个空白解决方案:MyWCF

 

2.我们再来建立一个Windows程序项目。DiplomaService如图,记住一定是Windows程序项目

在DiplomaService项目中建立一个

StudentModel类,为学生模型类。包含学生基本信息的类

代码:

  

然后在建立IStudentAccess的接口,IStudentAccess数据访问契约。在WCF中接口是WCF中的契约类

在IStudentAccess中定义方法:StudentModel  GetModel(string studentId);

代码:

接下来:我们就应该来创建一个服务类StudentAccess,那么我们真正的服务类实现我们的契约类接口IStudentAccess

 

代码:

 

这样我们三个基本的类都建立好了接下来我们来配置它们,使得它们可以被发布。

3.服务器简单配置。

  引用:.net3.5中的WCF必须的类库。需要添加引用从.Net中选择下面的类库。

  System.ServiceModel;

  System.Runtime.Serialization;

  配置:

  对契约IStudentAccess接口的配置:

  在接口上加属性:[ServiceContract]//应用程序中定义服务协定(表明当前是此为WCF契约)

  在方法GetModel上加上属性[OperationContract]//表示(应用程序中服务协定的一部分)

  另外,您可以加上自己的名称和命名空间,不加系统在会提供有默认值。

  对StudentModel上加上属性:[DataContract],指定当前模型类将被序列化。

  对StudentModel的所有公开的属性上加上 [DataMember]表示为序列化成员的数据成员部分。

  另外也可以用XmlSerializerFormat对模式类进行序列下,XmlSerializerFormat序列化时,它会把该类的公开属性成员全部直接序列话。

  但是XmlSerializerFormat没有DataContract效率高,而DataContract更为灵活。可以指定部分成员序列化。

 

这样我们的WCF服务程序就写好了,接下来我们就该发布它了,也就是服务上经常说到的承载服务。

那么我们承载服务的载体是什么呢?有很多方式,只要是.NetFormWork的程序都可以承载。比如:控制抬程序,应用程序,IIS服务,Windows服务等等。

那发布方式呢,可以通过配置文件发布,也可以通过代码发布。

添加应用程序配置文件App.Config。配置如下

 

然后启动程序写上代码

 

  ServiceHost host = new ServiceHost(typeof(StudentAccess));
  host.Open();

  有没有成功,访问一下连接就知道了

  http://localhost:9000/StudentAccess

  具体培植说明下再说了,我也是刚刚学习,大家多指教,代码过几天再发布上来。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值