XML转Json 设置指定节点为数组


原XML

5

不做处理,转成json

{"response":{"itemList":{"item":{"number":"5"}}}}

实际上item为集合对象,但是在item节点下只有一个数据的时候,默认转换成了对象而非数组
希望转成下面的json

{"response":{"itemList":{"item":[{"number":"5"}]}}}

需要为item加上特性

//取得item节点
var node = doc.ChildNodes.Item(0).ChildNodes.Item(0).ChildNodes.Item(0);

var attribute = doc.CreateAttribute("json", "Array", "http://james.newtonking.com/projects/json");
attribute.InnerText = "true";
node.Attributes.Append(attribute);

示例代码

XMLToJsonTest

参考资料

C# 强制JSON.NET将xml转换为JSON数组

Convert XML to JSON and force array

C