开发手册 欢迎您!
软件开发者资料库

WCF - 与Web服务对比

WCF与Web服务 - 从简单和简单的步骤学习WCF,从基本到高级概念,包括概述,Versus Web服务,开发人员工具,架构,创建wcf服务,托管wcf服务,IIS托管,自托管,WAS托管, Windows服务托管,消费wcf服务,服务绑定,实例管理,事务,ria服务,安全性,异常处理。

WCF与Web服务之间存在一些主要差异,如下所示.

  • 属性 :  WCF服务由ServiceContract和OperationContract属性定义,而Web服务由WebService和WebMethod属性定义.

  • 协议 :  WCF支持一系列协议,即HTTP,命名管道,TCP和MSMQ,而Web服务仅支持HTTP协议.

  • 托管机制 :  WCF托管有各种激活机制,即IIS(Internet信息服务),WAS(Windows激活服务),自托管和Windows服务,但Web服务仅由IIS托管.

  • 服务 :  WCF支持强大的安全性,可信赖的消息传递,事务和互操作性,而Web服务仅支持安全服务.

  • Serializer :  WCF通过使用System.Runtime.Serialization支持DataContract序列化程序,而Web服务通过使用System.Xml.Serialization支持XML序列化程序.

  • 工具 :  ServiceMetadata工具(svcutil.exe)用于为WCF服务生成客户端,而WSDL.EXE工具用于为Web服务生成相同的文件.

  • 异常处理 : 在WCF中,通过使用FaultContract以更好的方式处理未处理的异常.它们不像SOAP故障那样像Web服务那样返回客户端.

  • 哈希表 : 可以在WCF中序列化哈希表,但在Web服务中不是这种情况.

  • 绑定 :  WCF支持几种类型的绑定,如BasicHttpBinding,WSDualHttpBinding,WSHttpBinding等,而Web服务仅支持SOAP或XML.

  • 多线程 :  WCF通过使用ServiceBehavior类支持多线程,而Web服务不支持此.

  • 双工服务操作 : 除支持单向和请求 - 响应服务操作外,WCF还支持双工服务操作,而Web服务不支持双工服务操作.