【发布时间】:2014-09-18 16:16:52
【问题描述】:
我正在执行系统集成。客户文档说明
“发送消息时,HTTP CONTENT_TYPE 标头设置为“application/x-www-form-urlencoded”。
<Message>
<Originator>ACME Solutions</Originator>
<Payload>
...message xml content goes here...
</Payload>
</Message>
我正在使用 WebApi 2,并且 post 的默认控制器操作具有以下定义
public void Post([FromBody]string value)
每次我将此消息发布到我的网络服务时,收到的值始终为空
我尝试创建一个具有相同定义但属性始终为 null 的类。
public void Post([FromBody]Message value)
如果我将定义更改为更通用的定义,我可以从请求内容中提取 Xml 文档,但这不是我想要的方式,因为它使单元测试变得困难。
public void Post(HttpRequestMessage request)
任何人都可以建议我哪里出错以及为什么 xml 消息没有映射到我的班级。
【问题讨论】:
-
您是将 XML 原始文件发布到正文中还是对其进行编码(如您的标题所示)?
-
谢谢。这太明显了,我错过了。请张贴作为答案,我会接受
标签: c# xml asp.net-web-api