MsXML 调用 IIS 发布的 .net 但它不会将参数传递给 web 方法

MsXML calls IIS published .net but it wouldn't pass the parameters to web method

我们有一个 Web 服务场景,其中调用者(用 Magik(r) 编程语言编写)使用 MSXML 6.0 将准备好的 SOAP xml 发送到 Web 服务。 Web 方法使用 Visual studio 2012 用 C# 编写,并在 IIS 7.5(windows 服务器 2012)

上发布

问题是: web 方法没有收到参数,确切地说是用空参数调用的。

它还引发了一个异常“对象引用未设置到对象的实例”,显示了上述情况。

这可能是兼容性问题吗?由于所有部分都是 Microsoft 技术,因此看起来有点奇怪,但这里有一些结果可能有助于找出 calprit。

  1. 调用程序与其他 .net web 服务完美配合并完美发送参数
  2. 如果 web 服务没有参数,调用方也可以正常使用我们的 web 服务(在场景中)。
  3. 如果调用者应用程序是用 .net 编写的,则该 Web 服务可以很好地与调用者应用程序一起工作

问题在于定义天妇罗地址。这应该与 wsdl 类似,但是由于我自己创建了 xml 并通过 msxml 发送它,所以我将 tempuri 地址设置错误导致了问题。

奇怪的是微软对 tempuri 如此敏感,axis webservice 却没有!