wcf - 在 WCF 服务中使用 ServiceKnownType 时,在 SoapUI 中将多态类型作为参数传递

标签 wcf soapui datacontract serviceknowntype

我有一个 WCF 服务;此服务有一个操作接收类型为 Request 的参数。 .这只是基本类型,在调用操作时,我们实际上发送了一个 Request_V1 类型的值。 (从 Request 继承),它具有我想要发送的请求的完整实现。

尝试使用soapUI 测试服务时,我能够创建类型Request_V1 的复杂类型。 (添加适当的命名空间)但由于某种原因,该服务正在接收值,就像它是 Request 一样。类型。

正在阅读 ServiceKnowType ,我发现here我需要在客户端以某种方式明确指定这个继承关系,但我没有找到任何关于如何在 soapUI 上做到这一点的信息

有没有人遇到并解决过同样的问题?

谢谢

最佳答案

您还必须在 SOAP 消息中指定类型。
例如

<Request i:type="d:RequestV1">

...



其中 i 被定义为 XML-Instance 命名空间

关于wcf - 在 WCF 服务中使用 ServiceKnownType 时,在 SoapUI 中将多态类型作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15644446/

相关文章:

c# - 如何确定我的 dll 的托管位置

.net - 如何将 UsernameToken 添加到 Web 服务代理类的 RequestSoapContext 属性

c# - 通过 C# 中的 DataContracts 读取 JSON 时的可选字段

c# - 将DataMemberAttribute 放在接口(interface)成员上是什么意思?

当值可以是数组或单个项目时,C# DataContractJsonSerializer 失败

wcf - 用于非 HTTP 协议(protocol)应用程序的 Elmah 或没有 HttpContext 的 Elmah

wcf - 将 WCF 基于角色的安全性传递到 UI

java - 在 Java 中测试 SOAP Web 服务

payment-gateway - 使用网络资源的 SOAP API 时出错

java - 无法解析不受支持的 major.minor 版本 52.0