任何客户端都可以使用的具有复合类型的跨平台 WCF 服务

Cross-Platform WCF Service with Composite Type to be consumed by any client

我必须创建一个 WCF Web 服务,它应该能够 send/receive 来自几乎所有客户端的数据,即与客户端无关,可以被 Java 个客户端调用,IOS客户端等。在这种情况下,REST 是毫无疑问的,因为已经做出了 SOAP 的决定并且已经实现了部分架构。我得到了一个示例请求映射,例如:

Envelope/Body/createOrder/order/customerID
Envelope/Body/createOrder/order/shipmentDate
Envelope/Body/createOrder/order/items/item/lineNumber

同样,我也得到了一个与上面类似的响应映射。

我正在寻求您的建议:

  1. 此类服务的服务合同签名(参数类型和 return 类型)应该是什么样的,以便它可以接受和 return SOAP 数据而不是仅绑定到 .Net 平台?我可以只接受 return XMLElement 吗?只能是字符串吗?

我将通过回答自己来结束这个问题,以便将来搜索同一主题。我最终将服务的参数和 return 类型都声明为 XElement:

XElement ConfirmRegistration(XElement registrationData);

我使用 XElement 来利用 XML 到 LINQ。