添加web引用和添加服务引用有什么区别?

简介:

添加web引用和添加服务引用有什么区别,
Add Service References 和 Add Web References 有啥区别?
参考

http://social.microsoft.com/Forums/zh-CN/xmlwebserviceszhchs/thread/808d870b-49f1-47ac-b105-4beb580bcec6

(1)VS2005里提供的Add Web Reference(添加Web服务引用)的功能主要是添加Web Service引用。
(2)VS2008保留了Add Web Reference(添加Web服务引用)也是为了版本向前兼容。目前很多项目还是基于.NET Framework 2.0。
(3)VS2008在升级以后为了对.NET Framework 3.0 或 3.5版本上WCF Service Library的支持。增加了Add Service Reference(添加服务引用)功能。Framework3.0 或 3.5 时可用。

你说的情况我自己做了一下试验,同时存在Add Service Reference、Add Web Reference 两者情况的项目类型是Web服务程序。包括Web Service项目。普通的控制台等类型是没有Add Web Reference 。
我仔细对比了两种方式添加同一个 WebService生成的客户端文件 Reference.cs, 有差别。
1.主要添加引用都有一个获取服务元数据,反序列话本地类文件的过程。这个结构也基本类似。都包含wsdl\discovery等文件。
这个也和WCF Service支持Web Service的核心行业标准有关系。毕竟WCF的特性之一就是兼容Web Service的特性。
2.不同的地方时Add Web Reference 生成的 Reference.cs文件里,包含一个服务代理类,他负责与Web服务通信,它继承一个Soap类,使用SOAP协议,SOAP简单对象访问协议,基于XML语言。此外还包含一些Web服务类里定义的方法,和与之相关的异步调用方法和事件。遵守.NET Web Service 的主要规则。
3.Add Service Reference生成的客户端文件 Reference.cs。我看了一下,这个也会反序列化一个本地代理类,很相似和前者。不过除了服务类和其相关的一些别的类和契约接口。其中比较重要就是一个契约和一个通信管道。这个主要和WCF框架
的编程模型和反序列话机制有关系。因为WCF 强调的是 契约的概念,还有就是绑定协议,这个就直接决定了客户端和服务端通信的通道类型。你在这个文件里也能看到。此外还有服务请求和相应对应的信息。遵循WCF服务框架的规则。

——————————————————————————–
同时存在Add Service Reference、Add Web Reference 两者情况的项目类型是Web服务程序。包括Web Service项目。普通的控制台等类型是没有Add Web Reference 。

都是可以Add Web Reference的诶,控制台类型项目在Add Service Reference窗口有个Advanced按钮,其中仍然可以选择Add Web Reference。我觉得是微软建议使用Add Service Reference,但保留了Add Web Reference以保持兼容性。
 我测试了使用Add Web Reference这种方式,可以添加WCF服务

 

http://blog.csdn.net/szstephenzhou/article/details/7834669


本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/p/5460654.html,如需转载请自行联系原作者

相关文章
|
1月前
|
网络协议 Java Nacos
nacos常见问题之在web界面 上下线服务时报错 400如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
29 0
|
1月前
|
监控 Serverless 测试技术
Serverless 应用引擎常见问题之做的web服务计费如何解决
Serverless 应用引擎(Serverless Application Engine, SAE)是一种完全托管的应用平台,它允许开发者无需管理服务器即可构建和部署应用。以下是Serverless 应用引擎使用过程中的一些常见问题及其答案的汇总:
407 3
|
1月前
|
JSON API 数据库
解释如何在 Python 中实现 Web 服务(RESTful API)。
解释如何在 Python 中实现 Web 服务(RESTful API)。
26 0
|
1月前
|
负载均衡 Java 中间件
使用Go语言构建高性能Web服务
Go语言作为一种快速、高效的编程语言,其在构建高性能Web服务方面具有独特优势。本文将探讨如何利用Go语言开发和优化Web服务,以实现更高的性能和可伸缩性。
|
22天前
|
数据采集 Java API
python并发编程: Python使用线程池在Web服务中实现加速
python并发编程: Python使用线程池在Web服务中实现加速
18 3
python并发编程: Python使用线程池在Web服务中实现加速
|
1月前
javaWeb服务详解(含源代码,测试通过,注释) ——web.xml
javaWeb服务详解(含源代码,测试通过,注释) ——web.xml
7 0
|
1月前
|
XML JSON API
通过Flask框架创建灵活的、可扩展的Web Restful API服务
通过Flask框架创建灵活的、可扩展的Web Restful API服务
|
1月前
|
安全 中间件 Go
Go语言Web服务性能优化与安全实践
【2月更文挑战第21天】本文将深入探讨Go语言在Web服务性能优化与安全实践方面的应用。通过介绍性能优化策略、并发编程模型以及安全加固措施,帮助读者理解并提升Go语言Web服务的性能表现与安全防护能力。
|
1月前
|
设计模式 安全 Shell
Python生成Web服务
Python生成Web服务
14 0
|
1月前
|
搜索推荐 Java 数据库
springboot基于Web的社区医院管理服务系统
springboot基于Web的社区医院管理服务系统