0

我正在尝试在 iPhone 上使用肥皂来使用 WCF Web 服务(不是我自己编写的)。在同一 Web 服务器上运行这些工具时,我可以使用 SoapUI 和 .Net WebService Studio 测试该服务。但是当我从另一台机器上尝试时,这两个工具在尝试从本地主机导入时都会失败:

<wsdl:import namespace="http://MyDomain.IGeneralInterface" location="http://localhost:8000/?wsdl=wsdl0"/>

wsdl0:

<xsd:schema targetNamespace="http://MyDomain.IGeneralInterface/Imports">
<xsd:import schemaLocation="http://localhost:8000/?xsd=xsd0" namespace="http://MyDomain.IGeneralInterface"/>
<xsd:import schemaLocation="http://localhost:8000/?xsd=xsd2" namespace="http://schemas.datacontract.org/2004/07/MyDomain.IGeneralInterface"/>
<xsd:import schemaLocation="http://localhost:8000/?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/"/>
<xsd:import schemaLocation="http://localhost:8000/?xsd=xsd3" namespace="http://schemas.microsoft.com/2003/10/Serialization/Arrays"/>
<xsd:import schemaLocation="http://localhost:8000/?xsd=xsd4" namespace="http://schemas.microsoft.com/Message"/>
</xsd:schema>

我希望能够使用 wsdl2objc,但它也无法识别导入。

谁能告诉我为什么这是一个问题以及如何处理它???

4

1 回答 1

0

他们失败的原因是您的 wsdl 不平坦。为了使您的 WCF 服务具有互操作性,您可能会考虑扁平化您的 wsdl。请点击以下链接:

如何展平你的 wsdl

注意:如果您是 .NET 4.5,那么您会将其作为内置功能。即,当您开发服务时,您会看到一个生成扁平 wsdl 的 url。

于 2012-08-23T08:30:23.707 回答