将带有属性的json文本转换为xml

时间:2016-11-01 12:40:06

标签: c# json xml

我有以下json,它是从XML转换而来的。

{  
    "@number":"0",
    "Field":[  
        {  
            "@key":"status",
            "a":"1"
        }
    ]
}

当我使用JsonConvert.DeserializeXmlNode()函数将其转换回XML时,它会给我以下异常。

System.InvalidCastException: Unable to cast object of type 'Newtonsoft.Json.Converters.XmlDocumentWrapper' to type 'Newtonsoft.Json.Converters.IXmlElement'.

我该怎么做?

1 个答案:

答案 0 :(得分:2)

var result = JsonConvert.DeserializeXNode(json, "Root");

//output
<Root number="0">
 <Field key="status">
   <a>1</a>
 </Field>
</Root>

这没有问题。请注意,@number@key将是特定节点的属性!