使用REST POST服务上载XML(带有重复元素)

时间:2012-10-08 13:09:02

标签: rest post

我想使用rest post service上传xml。我使用普通的xml部署了post service正常工作。当我尝试使用相同元素的列表上传XML时:

CustomerOrder是列表类型元素,值在服务器端设置为null。我为客户和List<CustomerType> customerDetail采用了列表类型orderlist

如果我简单CustomerType customerDetail并上传一个客户xml,那么它就会成功上传。

但是,当我使用List/Array/Observablecollection并以单个xml上传多个客户时,客户详细信息将设置为null。

1 个答案:

答案 0 :(得分:0)

很难准确理解你的问题来自于你写这个问题的方式,但我的猜测是你试图发布一组客户并在你的文档中有多个根节点,如下所示:

<customer>
   <someNode />
</customer>
<customer>
    <someOtherNode />
</customer>

这是无效的XML。

如果这是您的问题,您有两种可能的解决方案。首先,做一个foreach循环并单独发布每个客户。 REST服务器端简单,快速但资源密集。其次,为集合添加一个客户批处理节点作为您的根节点,其中包含多个客户节点,并添加在REST服务器端处理此功能的能力(另一个foreach,但只有一个http调用服务器因此使用的资源更少)。这更复杂,但最终是更好的方法。您的新XML文档可能如下所示:

<customerCollection>
<customer>
   <someNode />
</customer>
<customer>
    <someOtherNode />
</customer>
</customerCollection>