>我需要将一些 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 库完成的转换很好,您无法获得您提出的两个结果之一。每个方案中的 Tag 并不意味着(从 XML 的角度来看)它是一个空数组。但这意味着属性(不是数组)EmptyCollection是空的。你会失去一些东西。
我建议您测试标签是否缺失,因为"没有信息",即"数组中没有条目"