【发布时间】:2011-04-16 21:42:19
【问题描述】:
这是我第一次尝试使用 WCF,所以我猜我做错了。 我正在尝试访问由http://confluence.atlassian.com/rpc/soap-axis/confluenceservice-v1?wsdl 的WSDL 定义的soap 服务我正在使用VS2010,我向我的项目添加了一个服务引用并将其指向那里的URL(或者更确切地说,我们的Intranet 安装它),但是当我使用对象浏览器查看服务时,界面上的操作都是不带参数的空方法。似乎 WCF 没有正确读取类型信息。它不会给出错误,但会发出大量警告,如下所示:
警告 1 自定义工具警告:故障 在命名为 InvalidSessionException 操作 getPermissions 不能 进口的。不支持的 WSDL,故障 消息部分必须引用 元素。此故障信息不 引用一个元素。如果你有编辑 访问 WSDL 文档,您可以 通过引用来解决问题 使用“元素”的架构元素 属性。 Z:\TestLibrary\Service References\Confluence\Reference.svcmap 1 1 TestLibrary
警告 2 自定义工具警告: 可选的 WSDL 扩展元素 'body' 从命名空间 'http://schemas.xmlsoap.org/wsdl/soap/' 没有被处理。 XPath: //wsdl:definitions[@targetNamespace='http://confluence.atlassian.com/rpc/soap-axis/confluenceservice-v1']/wsdl:binding[@name='confluenceservice-v1SoapBinding']/wsdl:operation[@name='getPermissions']/wsdl:input[@name=' getPermissionsRequest'] Z:\TestLibrary\Service References\Confluence\Reference.svcmap 1 1 TestLibrary
我做错了什么?我尝试使用选项组合更改服务的配置,但我永远无法正确地从 WSDL 中提取类型。我一直假设 WCF 将自动生成类型类以及服务接口。我应该弄清楚 WSDL 中使用了哪些类型并自己创建类和数据协定,还是其他?
【问题讨论】:
标签: c# wcf web-services visual-studio-2010