这会有点长,所以请耐心等待。
我已经在这个问题上打了很长时间。我对客户端的Web服务不是很有经验,并且在设置这个问题时遇到了实际问题。我所拥有的是来自网站上托管的第三方的Web服务。该服务是用JAVA编写的WSDL服务。我试图从.NET解决方案连接到它并使用提供的Web服务。供应商的要求之一是“将Headers参数设置为'XXXX',将值设置为'YYYY'”
我遇到了一些严重的问题。我的第一次尝试是在Visual Studio(2012)中简单地将Web服务添加为Web引用。服务没有公开设置标题的方法,所以我只是调用一个函数来查看发生了什么。我收到了一个例外“No SOAP Headers specified”。
接下来,我尝试使用SVCUTIL.exe创建手动代理。我认为Web服务可能有问题,因为我收到错误“无法导入wsdl:binding ”:“详细信息:命名空间中所需的WSDL扩展元素'绑定'{{3 “没有处理。”
但是,仍会创建类和配置文件。无论如何,我将该类导入我的Web应用程序并使用代理配置中的必要设置更新了我的web.config。我声明了所需类的一个实例,这就是这次尝试向南的地方。在声明类的实例时,我收到错误“找不到ServiceModel客户端配置中引用契约”ContractName“的默认端点元素。这可能是因为在客户端中找不到与此契约匹配的端点元素元件”。我想知道是否可能存在服务问题,或者它们根本不是为.NET设计的。另一个显而易见的选择是我做错了什么。我很乐意发布配置文件,如果你想看到它(我只觉得我已经足够加载了这个帖子)。
我真正想要的是如何在Visual Studio c#应用程序中添加Web服务作为引用但是能够在代码中设置标题的指令(教程非常棒)。
对不起这篇文章的篇幅感到抱歉。
感谢您的帮助。