私は JSON シリアル化のために C# (ASP.Net、MVC) と Newtonsoft を使用しています。ビュー用に JSON 形式にしたい以下のような XDocument を取得します。
<group>
<name>Group 1</name>
<description><p>Description</p></description>
<section>
..
</section>
<section>
..
</section>
</group>
私はこのような拡張機能を持っています
private static readonly JsonSerializer jSerializer = JsonSerializer.Create(new JsonSerializerSettings {});
public static string ToJson(this object obj) {
using (StringWriter writer = new StringWriter()) {
jSerializer.Serialize(writer, obj);
return writer.ToString();
}
}
問題は、説明が逆シリアル化されることです。そのため、次のようなものがあります
... "description": { "p": "Description Text" }
そのまま投稿すると「[Object object]」と表示されます。
- 完全に逆シリアル化されたクラスを生成せずに、(一般的に) XDocument の JsonProperties を設定する方法はありますか?
- そうでない場合、「これを文字列として保持し、これ以上シリアル化しないでください」というJsonPropertyを設定する方法はありますか
- これに XSD で生成されたクラスを使用する場合、どの「タイプ」を設定する必要がありますか? "いかなるタイプ"?
よろしくお願いします。