1

Newtonsoft の .Net ライブラリを使用して JSON を XML に変換する場合、特定の JSON 要素を XML 属性に変換する方法はありますか?

たとえば、次の JSON を使用します。

{
    "array": {
        "item": [
            1,
            2,
            3
        ],
        "length": 3
    }
}

そしてそれを次のように変換します:

<array length="3">
    <item>1</item>
    <item>2</item>
    <item>3</item>
</array>

ありがとう。

4

1 に答える 1

6

属性の前に @ を付けて、オブジェクトの先頭に配置できますか? ドキュメントには次のように書かれています。

属性には @ がプレフィックスとして付けられ、オブジェクトの先頭にある必要があります。

次のようになります: "@length": "3",「長さ」という属性の定義の場合

または、JSON をオブジェクトに逆シリアル化し、それを Xml として再シリアル化することもできます。

[XmlRoot(ElementName="array")]
class JsonToXmlTranslationObject {

     [XmlElement(ElementName="item")]
     public int[] item { get; set; }

     [XmlAttribute]
     public int length { get; set; }
}

次に、Json シリアライザーを使用して逆シリアル化し、Xml シリアライザーを使用JsonToXmlTranslationObjectして XML にシリアル化します。

于 2013-08-17T23:02:08.497 に答える