web引用和服务引用

在VS2010环境下开发C#的winform程序或者WPF时,会碰到调用web引用的问题。

1.添加一个服务引用时,会在app.config里生成basicHttpBinding和customBinding两个节点,在这两个节点力又会分别生成这个服务引用的binding,如图

image

当然相应的在client节点里,针对每一个服务引用都会生成两个endpoint

image

这样就会导致调用时提示

错误::无法加载协定为“ServiceReference1.INetbankUpdateService”的终结点配置部分,因为找到了该协定的多个终结点配置。请按名称指示首选的终结点配置部分。

解决办法,就是把client里的两个endpoint,删掉一个就可以了。

注意:事实上这里的服务引用特指的是WCF服务,但是为了兼容webservice,所以也可以把web引用作为服务引用添加。只不过调用时服务器后面加了“soap”字样。

2.添加一个web引用,也就是Webservice。这个就很简单了,添加后直接调用就行。

3.WEB引用和服务引用的用法区别

   添加web引用是.net2.0或1.0中的内容。添加服务引用时.net3.0及以上版本才具有的功能。在3.0里,web引用可以作为服务引用来添加。当然在添加服务引用的时候,也可以进入高级配置,添加web引用。

 

原文地址:https://www.cnblogs.com/tianjixiaoying/p/2977244.html