【发布时间】:2016-03-04 01:53:26
【问题描述】:
我需要阅读 WCF 项目中的消息内容,例如
var messageContent = Encoding.UTF8.GetString(OperationContext.Current.RequestContext.RequestMessage.GetBody<byte[]>());
但结果我得到了一个错误:
期望来自命名空间的元素“base64Binary” 'http://schemas.microsoft.com/2003/10/Serialization/'..遇到 名称为“人类”的“元素”,命名空间 'http://numans.hr-xml.org/2007-04-15'。
你能告诉我我做错了什么吗?
我发送的内容是:
<Human xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://numans.hr-xml.org/2007-04-15">
<HumanId>
<guid>c2ee9a7e-c7a8-48e0-910b-47c2012bfa8e</guid>
</HumanId>
...
</Human>
我还尝试阅读以下内容:
var messageContent = OperationContext.Current.RequestContext.RequestMessage.ToString();
消息内容的结果:
...流...
【问题讨论】:
-
你能把这两个方法调用分开并确定它在哪里抛出吗?
GeyBody或GetString? -
GetBody()的问题