[英]How to serialize empty arrays when converting to XML with Json.Net
我需要将一些Json转换为XML,但是当我这样做时,它将删除所有空数组/列表/集合/等...
如何获得将数组作为空项目包括在内的信息?
示例Json:
{
"EmptyCollection": [],
"OtherPorperty\": "TestValue"
}
C#代码:
var jsonString = "{ \"EmptyCollection\": [], \"OtherPorperty\":\"TestValue\" }";
var xmlDoc = JsonConvert.DeserializeXmlNode(jsonString, "root", true);
Console.WriteLine(xmlDoc.InnerXml);
实际结果是
<root>
<OtherPorperty>TestValue</OtherPorperty>
</root>
所需的结果是
<root>
<EmptyCollection></EmptyCollection>
<OtherPorperty>TestValue</OtherPorperty>
</root>
or
<root>
<EmptyCollection />
<OtherPorperty>TestValue</OtherPorperty>
</root>
使用writeArrayAtribute似乎不起作用。
我相信这个意思有问题。 我个人认为,由Json库完成的转换就可以了,而且您无法获得您提出的两个结果之一。 从XML的角度来看,在每种情况下提出的Tag都不意味着它是一个空数组。 但这意味着EmptyCollection属性(而不是array)为空。 你会失去一些东西。
我建议您测试标签是否为“ no information”(也称为“数组中没有条目”)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.