我正在尝试将this WCF service reference添加到我的Visual Studio 2012 C#项目中。当我尝试通过添加服务对话框加载服务时,出现此错误
下载时出错 'https://api.onecallnow.com/WebService/3.1/soap.svc/_vti_bin/ListData.svc/ $的元数据'。 请求失败,HTTP状态为400:错误请求。元数据 包含无法解析的引用: 'https://api.onecallnow.com/WebService/3.1/soap.svc'。内容类型 应用/肥皂+ xml的;服务不支持charset = utf-8 https://api.onecallnow.com/WebService/3.1/soap.svc。客户和 服务绑定可能不匹配。远程服务器返回了 错误:(415)无法处理消息,因为内容类型 “应用程序/肥皂+ xml的; charset = utf-8'不是预期的类型 “文本/ XML; charset = utf-8'..如果服务是在当前定义的 解决方案,尝试构建解决方案并添加服务引用 试。
我已经查看了其他有关此错误的问题,但几乎所有问题都建议更改一些我无法访问的WCF服务配置。
有人建议消息的最后一部分意味着我使用的SOAP版本与服务使用的版本不同,但我没有看到任何在“添加Web服务”对话框中更改它的选项。
有人可以帮我正确添加此服务参考吗?
答案 0 :(得分:5)
如果您在浏览器中使用该服务,您将看到以下内容:
服务所有者已禁用元数据发布,因此您无法通过“添加服务引用”对话框添加服务引用。
如果服务的所有者可以为您提供WSDL和其他元数据文件,则可以使用ServiceModel Meatadata Utility Tool (SvcUtil.exe)构建代理;否则他们可能会有其他可以使用的方法。
当然,假设此服务仅供公众使用。