次のようなjson文字列があります。
{
"Bar": {
"Pressure":42,
"ServesDrinks":false
},
"Baz":[
{
"Pressure":9001,
"ServesDrinks":true
},
{
"Pressure":0,
"ServesDrinks":false
}
]
}
そして、これを次のようなクラスにデシリアライズしたいと思います。
public class Foo
{
public Bar Bar { get; set; }
/// <summary>
/// Raw serialized (un-de-serialized) json string of the Baz list
/// </summary>
public string Baz { get; set; }
}
基本的に Baz 値を逆シリアル化せず、代わりに生の文字列を保存します。つまり、Baz
シリアル化後の文字列値を次のようにします。
"[{\"Pressure\":9001,\"ServesDrinks\":true},{\"Pressure\":0,\"ServesDrinks\":false}]"
私は Json.Net を使用していますが、これを行う方法を理解できていません。Baz
理想的なケースでは、生の json を保持する魔法の属性を自分のプロパティに置きたいだけです。
ここで非常によく似た質問を見てきました: 一部のフィールドをそのままにして、JSON.NET で部分的に逆シリアル化します。
JObject
しかし、私はそのアプローチをどのように進めるかを理解していました。
(参考になれば、保持したいデータがリストであることはわかっています)
助けてくれてありがとう!