我正在使用 .NET 4 框架并制作了 WCF 工作流服务应用程序。
我想使用在另一个 VS 实例中运行的 SOAP Web 服务 (.NET 3.5)。唯一公开的方法如下:
[WebMethod]
public string Reverse(string input)
{
char[] chars = input.ToCharArray();
Array.Reverse(chars);
return new string(chars);
}
我已使用以下步骤在我的工作流程中添加服务:
- 添加服务参考
- 提供 WSDL(操作按预期显示在操作框中)
- 单击确定
- 构建解决方案以确保服务显示在我的工具箱中
- 将服务从工具箱拖到工作流中
但是,当我查看工作流中服务的属性时,无法指定输入参数或存储服务调用结果的位置。
我只能选择指定一些晦涩的参数,例如Body:InArgument<ReverseRequestBody
和outBody:OutArgument<ReverseResponseBody
(都不是字符串)。
这是描述工作流中服务属性的屏幕截图:
因此,我的问题是:
是否可以通过将字符串指定为输入参数(就像要使用它一样)来使用 SOAP 服务,并将结果分配给工作流变量?
也就是说,如何让上图中的和对应web服务的参数和返回值呢body
?outBody