当只有一个对象时将XML转换为Json Array

我目前正在使用Newtonsoft将一些xml转换为json,以从RestExtension返回。

我的xml格式为

<Items>

<Item>

<Name>name</Name>

<Detail>detail</Detail>

</Item>

<Item>

<Name>name</Name>

<Detail>detail</Detail>

</Item>

</Items>

我将其转换为json

JsonConvert.SerializeXmlNode(xmldocument);

如果有多个项目,则可以正常工作。

我得到这个-json中的项目数组(这是我需要的):

{"Items":{"Item":[{"Name":"name","Detail":"detail"},{"Name":"name","Detail":"detail"}]}}

但是,当只有一个时,可以这样转换(而不是数组):

 {"Items":{"Item":{"Name":"name","Detail":"detail"}}}

正在阅读此内容的我的应用程序开发人员需要json返回一组项,无论是否存在一个或多个。

有没有办法欺骗它,以为它是数组,或者有人可以建议另一种方法?

回答:

阅读有关序列化Xml节点的文档

您可以通过这种方式强制使用JSON数组

var xml = @"<Items xmlns:json='http://james.newtonking.com/projects/json' >

<Item json:Array='true'>

<Name>name</Name>

<Detail>detail</Detail>

</Item>

</Items>";

以上是 当只有一个对象时将XML转换为Json Array 的全部内容, 来源链接: utcz.com/qa/421986.html

回到顶部