<PackageReference Include="NJsonSchema" Version="9.4.6" />

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(); } } }