<PackageReference Include="System.Text.Json" Version="6.0.0-preview.4.21253.7" />

JsonObjectConverter

using System.Text.Json.Node; namespace System.Text.Json.Serialization.Converters { internal class JsonObjectConverter : JsonConverter<JsonObject> { public override void Write(Utf8JsonWriter writer, JsonObject value, JsonSerializerOptions options) { value.WriteTo(writer, options); } public override JsonObject Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) { switch (reader.TokenType) { case JsonTokenType.StartObject: return ReadObject(ref reader, options.GetNodeOptions()); case JsonTokenType.Null: return null; default: throw ThrowHelper.GetInvalidOperationException_ExpectedObject(reader.TokenType); } } public JsonObject ReadObject(ref Utf8JsonReader reader, JsonNodeOptions? options) { JsonElement element = JsonElement.ParseValue(ref reader); return new JsonObject(element, options); } } }