.net web参考和服务参考之间的区别?

.net web参考和服务参考之间的区别?,.net,wcf,asmx,.net,Wcf,Asmx,WCF中的web引用和服务引用有什么区别? 在WCF中哪个更可取?服务引用是用于向所有WCF服务(它们可能不是web服务)添加引用的较新接口,而web引用专门涉及ASMX web引用 您可以通过添加服务引用中的高级选项访问web引用(如果我没有记错的话) 我会使用服务引用,因为据我所知,它是两者中较新的机制。服务引用处理端点和绑定,它们是完全可配置的。它们允许您通过任何传输协议(HTTP、TCP、共享内存等)将客户端代理指向WCF 它们设计用于与WCF一起工作 如果您使用WebProxy,那么您

WCF中的web引用和服务引用有什么区别?
在WCF中哪个更可取?

服务引用是用于向所有WCF服务(它们可能不是web服务)添加引用的较新接口,而web引用专门涉及ASMX web引用

您可以通过添加服务引用中的高级选项访问web引用(如果我没有记错的话)


我会使用服务引用,因为据我所知,它是两者中较新的机制。

服务引用处理端点和绑定,它们是完全可配置的。它们允许您通过任何传输协议(HTTP、TCP、共享内存等)将客户端代理指向WCF

它们设计用于与WCF一起工作


如果您使用WebProxy,那么您就相当于将自己绑定到通过HTTP使用WCF上了。要考虑的另一点是,新的UI for Service Interface将为您提供创建代理类的更大灵活性。例如,它将允许您将数据契约映射到现有DLL(如果它们匹配)(实际上这是默认行为)。

这里的低级回答是,Web引用将创建一个客户端代理类,该类允许您的代码与通过WSDL描述并通过SOAP或HTTP GET通信的Web服务通信(其他海报表明这只是ASMX,但Web引用也可以与基于Java的Web服务或基于Python的Web服务或Ruby进行通信,只要它们都使用WSDL并符合WS-I互操作性标准)


服务引用将创建与基于WCF的服务通信的客户端代理类:无论该WCF服务是否为Web服务。

Web引用允许您与基于实现WS-I基本概要文件1.1的任何技术的任何服务通信,并将相关元数据作为WSDL公开。内部首先,它在客户端使用ASMX通信堆栈

服务引用允许您与基于实现WCF支持的许多协议(包括但不限于WS-I基本配置文件)的任何技术的任何服务进行通信。在内部,它在客户端使用WCF通信堆栈

请注意,这两个定义都非常广泛,并且都包括未在.NET中编写的服务

只要WCF端点使用
basicHttpBinding
或某些兼容的自定义变体,添加指向WCF服务的Web引用是完全可能的(尽管不推荐)


还可以添加指向ASMX服务的服务引用。在编写新代码时,您应该始终使用服务引用,因为它更灵活且经得起未来的考验。

+1添加任何具有正确格式WSDL的标准web服务都符合标准,因此我可以添加服务引用o基于java的web服务?它仍然有意义吗?因为java对wcf堆栈一无所知……是的,如果java etc web服务有wsdl,您可以向其添加服务引用。服务引用会将其视为“经典”本例中的web引用。+1用于说明web服务可以使用WSDL描述的web服务以及ASMX。事实上,我有一个业务层,它有一个web引用和一个服务引用。web引用使用一个WSDL web服务,而服务引用使用一个ASMX服务。添加服务引用->高级->添加Web引用…与非直观的解决方案不同。还可以看看渠道工厂-嗯,也许选择一个答案?顺便问一下,有人能告诉我如何通过服务引用使用服务吗?有了Web引用,我似乎总能在某种服务对象中找到核心功能。有了服务引用,不太多。例如,我正试图使用联邦快递费率服务获取各种联邦快递配送选项的价格。我知道在某个地方有一个getRates()调用,但我找不到带有服务引用的。@BenMills:查找带有
客户端
后缀的类。