无效的JSON转换为XML

时间:2015-11-17 17:36:44

标签: json xml json.net

我正在调用第三方restAPI并找回错误的JSON,修复JSON的最佳方法是什么:

{
"site": {
        "name":{"2":"stringstuff"},
        "primaryname":{"ref":2,"dname":"stringstuff"}       
    }
}

正如您所看到的,名称实际上应该看起来像主要名称。转换为XML时,它看起来像这样:

<sites>
    <name>
        <2>stringstuff</2>
    </name> 
    <primaryname>   
        <ref>2</ref>    
        <dname>stringstuff</dname>  
    </primaryname>
</sites>

是否有一种不太复杂的方法来解决此问题,而不是转换为Object,以这种方式修复数据然后将Object转换为XML

(注意我使用的是Newtonsoft JSON.Net库,要求必须以XML格式从我的Web服务返回。)

1 个答案:

答案 0 :(得分:0)

我不确定你为什么说这个json无效。它看起来很好。我可以使用XPath 3.1 json-to-xml()函数将其转换为XML,它出现如下:

<?xml version="1.0" encoding="UTF-8"?>
<map xmlns="http://www.w3.org/2005/xpath-functions">
    <map key="site">
        <map key="name">
            <string key="2">stringstuff</string>
        </map>
        <map key="primaryname">
            <number key="ref">2</number>
            <string key="dname">stringstuff</string>
        </map>
    </map>
</map>

您可以使用XSLT轻松转换为您想要的任何其他内容