現在、私はこのjson構造を持っています:
{
key1: value1,
key2:
[
{key3: value3}
{key4: value4}
]
}
そしてそれを型に逆シリアル化します
IDictionary<string, object>
IDictionary<string, IList<Dictionary<string, object>>>
CustomCreationConverter を使用する:
public class NestedArrayConverter : CustomCreationConverter<IList<Dictionary<string, object>>>
{
public override IList<Dictionary<string, object>> Create(Type objectType)
{
return new List<Dictionary<string, object>>();
}
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
if (reader.TokenType == JsonToken.StartArray)
return base.ReadJson(reader, objectType, existingValue, serializer);
return serializer.Deserialize(reader);
}
}
ここで、別の配列を value3 に接続するなど、1 レベル深くする必要があります。これは任意であるため、value4 は異なるものにすることができます。これはどのように行うことができますか?
最後に、データを MongoDB に書き込みますが、タイプが JArray または JObject の場合、ドライバーは機能しません。ただし、構造化データが必要です。文字列では不十分です。