1

可能重复:
仅获取 WCf 消息的正文

早上好,

我有一个 WCF 服务,它构建一个复杂的对象,然后将它发送到消费客户端。目前该服务运行良好,但 xml 在客户端上重新膨胀/反序列化,我不希望这样,因为客户端想要使用 XML。

那么有没有办法获取作为 WCF 服务响应的一部分传输的“XML 文档”。当然,我可以在客户端再次对其进行序列化,但如果可以避免额外的步骤,为什么还要这样做。

TIA JB

4

1 回答 1

1

尽管在服务器端和客户端都可以连接到多个 WCF 接收/发送步骤,但您可以在其中影响序列化的执行方式(在您的情况下不执行),但我相信这对您来说开销太大设想。

您最好简化工作流程并坚持使用开箱即用的功能。

我认为最简单的方法是仅在服务器端手动序列化您的对象,然后将结果作为字符串发送回客户端。

为了保持灵活性(您稍后可能希望添加更多伴随序列化数据的数据)将此序列化 XML 放入专用数据传输对象 (DTO)的属性中。

然后将此 DTO 发送给客户端,客户端只需从该属性中读取 XML。

当然,在幕后仍然有一些序列化。但这将是 WCF 服务/客户端通信完全透明地执行的内置功能。如果您没有严重的理由手动影响它,请保持原样。如果你不知道你在做什么,你可能会打开潘多拉的盒子......

像上面描述的 DTO 这样发送一个简单的对象在这里应该没什么大不了的。我的意思是,这种情况主要是通过网络发送一堆字符串,这不会造成任何麻烦并且开销很小。

于 2012-12-28T11:43:42.720 回答