1

我在尝试从 Biztalk 编排中调用 SOAP Web 服务时遇到了这个问题。Web Service 是 SAP 作为 SOAP Web Service 公开的一个 abapi,我要调用的 Web 方法的签名是这样的:

Operation(param1 as System.String, param2 as System.String, param3 ArrayOfSomeClass)

当我看到生成的模式时,我注意到只生成了“ArrayOfSomeClass”和“SomeClass”。但我没有看到任何代表整个请求的模式。我还注意到生成了一个 Web 端口类型,并且请求消息表示为多部分消息。此消息的部分包含所有标量参数(param1、param2)以及数组。

我知道我可以只使用分配形状并通过代码填充消息,但这不是我想要的,因为我想将另一条消息映射到 Web 服务请求。

这可能吗?有人遇到过类似的问题吗?

提前致谢!

4

1 回答 1

2

您的观察是正确的,不会为简单类型生成模式,并且在此处清楚地记录并解释了您应该如何使用这些类型。

http://msdn.microsoft.com/en-us/library/aa561724(BTS.20).aspx

XSD 将不包含简单参数类型的节点 当您添加 Web 引用并且 Web 方法具有简单类型的参数时,生成的 XSD 将不包含该参数的节点。相反,生成的多部分消息将包含一个简单类型的部分。编排应该适当地处理这个消息部分。如果它是对 Web 服务的请求的一部分,请使用消息分配形状手动将值分配给该部分。如果它是来自 Web 服务的响应的一部分,请以表达式形状手动访问该部分以查看值。

我没有得到你的第二点

我想将另一条消息映射到 Web 服务请求。

于 2010-03-04T17:13:44.397 回答