EZL*_*ner 1 c# xml json json.net
使用Newtonsoft的.Net库将JSON转换为XML,有没有办法将特定的JSON元素转换为XML属性?
例如,采用以下JSON:
{
"array": {
"item": [
1,
2,
3
],
"length": 3
}
}
Run Code Online (Sandbox Code Playgroud)
并将其转换为:
<array length="3">
<item>1</item>
<item>2</item>
<item>3</item>
</array>
Run Code Online (Sandbox Code Playgroud)
谢谢.
你能用@前缀属性并将它们放在对象的顶部吗?它在文档中说:
属性以@为前缀,应位于对象的开头.
看起来像:"@length": "3",定义一个名为'length'的属性
或者,您可以将JSON反序列化为对象,然后将其重新序列化为Xml:
[XmlRoot(ElementName="array")]
class JsonToXmlTranslationObject {
[XmlElement(ElementName="item")]
public int[] item { get; set; }
[XmlAttribute]
public int length { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
然后使用您的Json序列化程序反序列化,然后使用Xml序列化程序将序列化JsonToXmlTranslationObject到您的XML中.