关于WCFServiceContract特性简介

想要运用好一门技术就要了解它的基本的特性,比如类的特性,我们就来分析一下WCF ServiceContract特性。Windows通信基础(Windows Communication Foundation,WCF)是基于Windows平台下开发和部署服务的软件开发包(Software Development Kit,SDK)。

#T#WCF为服务提供了运行时环境(Runtime Environment),使得开发者能够将CLR类型公开为服务,又能够以CLR类型的方式使用服务。理论上讲,创建服务并不一定需要WCF,但实际上,使用WCF却可以使得创建服务的任务事半功倍。WCF是微软对一系列产业标准定义的实现,包括服务交互、类型转换、封送(Marshaling)以及各种协议的管理。正因为如此,WCF才能够提供服务之间的互操作性。WCF ServiceContract特性允许应用到接口或类上。当接口应用了Service-Contract特性后,需要定义类实现该接口。总的来讲,我们可以使用C#或VB去实现接口,服务类的代码无需修改,自然而然成为一个WCF服务:

 
 
  1. [ServiceContract]
  2. interface IMyContract
  3. {
  4. [OperationContract]
  5. string MyMethod();
  6. }
  7. class MyService : IMyContract
  8. {
  9. public string MyMethod()
  10. {
  11. return "Hello WCF";
  12. }
  13. }

我们可以隐式或显式实现接口:

 
 
  1. class MyService : IMyContract
  2. {
  3. string IMyContract.MyMethod()
  4. {
  5. return "Hello WCF";
  6. }
  7. }

一个单独的类通过继承和实现多个标记了WCF ServiceContract特性的接口,可以支持多个契约。

 
 
  1. [ServiceContract]
  2. interface IMyContract
  3. {
  4. [OperationContract]
  5. string MyMethod();
  6. }
  7. [ServiceContract]
  8. interface IMyOtherContract
  9. {
  10. [OperationContract]
  11. void MyOtherMethod();
  12. }
  13. class MyService : IMyContract,IMyOtherContract
  14. {
  15. public string MyMethod()
  16. {...}
  17. public void MyOtherMethod()
  18. {...}
  19. }

然而,服务类还有一些实现上的约束。我们要避免使用带参构造函数,因为WCF只能使用默认构造函数。同样,虽然类可以使用内部(internal)的属性、索引器以及静态成员,但WCF客户端却无法访问它们。

新闻名称:关于WCFServiceContract特性简介
标题链接:http://www.hantingmc.com/qtweb/news29/337379.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联