ExtensionDataDeserializationConverter
Deserializes all JSON Schemas in the extension data property.
using Newtonsoft.Json;
using System;
namespace NJsonSchema
{
internal class ExtensionDataDeserializationConverter : JsonConverter
{
public override bool CanRead => true;
public override bool CanWrite => false;
public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
{
JsonExtensionObject jsonExtensionObject = (JsonExtensionObject)Activator.CreateInstance(objectType);
serializer.Populate(reader, jsonExtensionObject);
jsonExtensionObject.DeserializeExtensionDataSchemas(serializer);
return jsonExtensionObject;
}
public override bool CanConvert(Type objectType)
{
return true;
}
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
{
throw new NotImplementedException();
}
}
}