比较 ASP.NET Web Services 与 WCF
与 ASP.NET Web Services 相比,WCF 服务具有几个重要优势。这会减少开发人员为适应不同软件通信方案而必需了解的技术的数量,从而降低软件开发资源的成本及完成软件开发项目所需的时间。
服务开发
WCF 支持更多用于传输消息的协议。
ASP.NET Web Services 仅支持使用超文本传输协议 (HTTP) 发送消息。 WCF 支持使用 HTTP、传输控制协议(TCP)、命名管道和 Microsoft 消息队列(MSMQ)发送消息。 更重要的是,可以扩展 WCF 以支持其他传输协议。
服务承载
WCF 提供了更丰富的工具来部署和管理应用程序。
除了 ASP.NET 的配置系统外,WCF 还提供了一个配置编辑器、从发件人到接收方的活动跟踪,还提供了多个中介的活动跟踪、跟踪查看器、消息日志记录、大量性能计数器以及对 Windows Management Instrumentation 的支持。
异常处理
在 ASP.NET Web Services 中未处理的异常将作为 SOAP 错误返回客户端。可以显式抛出 SoapException 类的实例。
在 WCF 服务中,未处理的异常不会作为 SOAP 错误返回到客户端,以防止无意中通过异常公开敏感信息。