服务参考与 Web 参考
Posted
技术标签:
【中文标题】服务参考与 Web 参考【英文标题】:Service reference vs Web reference 【发布时间】:2014-07-19 04:37:28 【问题描述】:我正在使用由第三方开发的 Web 服务,我注意到它的行为存在一些差异,具体取决于我将它们添加到 VS 项目的方式:Add Service Reference
或 Add Web Reference
。
根据我的研究,Add Service Reference
添加的服务更新且适合 WCF 服务。由于我不知道我正在尝试与之交互的服务是什么类型的,有没有一种方法可以让我知道添加它们的更好方法是什么?
当我通过Add Web Reference
添加它们时,我得到了更好的行为,所以我很想将它用于每项服务,但我真的不知道。
注意:我也检查过this post。
【问题讨论】:
【参考方案1】:Check link here. 我认为这已经在链接中得到了回答。
Web Reference 允许您与任何基于实现 WS-I Basic Profile 1.1 的技术的任何服务进行通信,并将相关元数据公开为 WSDL。在内部,它使用客户端的 ASMX 通信堆栈。
服务引用允许您与基于实现 WCF 支持的许多协议(包括但不限于 WS-I Basic Profile)的任何技术的任何服务进行通信。在内部,它使用客户端的 WCF 通信堆栈。
请注意,这两个定义都非常广泛,并且都包括不是用 .NET 编写的服务。
只要 WCF 端点使用 basicHttpBinding 或一些兼容的自定义变体,添加指向 WCF 服务的 Web 引用是完全可能的(尽管不推荐)。
还可以添加指向 ASMX 服务的服务引用。在编写新代码时,您应该始终使用服务引用,因为它更灵活且面向未来。
【讨论】:
谢谢。我已经在question 中检查了Christian Hayter 的答案,您不应该复制它,而是引用它。无论如何,它给出了一个理论观点,但不是我的问题的具体答案。以上是关于服务参考与 Web 参考的主要内容,如果未能解决你的问题,请参考以下文章