<PackageReference Include="System.Text.Json" Version="10.0.0" />

System.Text.Json.Nodes.JsonNode

public abstract class JsonNode
The base class that represents a single node within a mutable JSON document.
namespace System.Text.Json.Nodes { public abstract class JsonNode { public JsonNodeOptions? Options { get; } public JsonNode Parent { get; } public JsonNode Root { get; } [Nullable(2)] public JsonNode this[int index] { [NullableContext(2)] get; [NullableContext(2)] set; } [Nullable(2)] public JsonNode this[string propertyName] { [return: Nullable(2)] get; [param: Nullable(2)] set; } public JsonArray AsArray(); public JsonObject AsObject(); public JsonValue AsValue(); public string GetPath(); public virtual T GetValue<[Nullable(2)] T>(); public JsonNode DeepClone(); public JsonValueKind GetValueKind(); public string GetPropertyName(); public int GetElementIndex(); public static bool DeepEquals(JsonNode node1, JsonNode node2); public void ReplaceWith<[Nullable(2)] T>(T value); public static implicit operator JsonNode(bool value); public static implicit operator JsonNode(bool? value); public static implicit operator JsonNode(byte value); public static implicit operator JsonNode(byte? value); public static implicit operator JsonNode(char value); public static implicit operator JsonNode(char? value); public static implicit operator JsonNode(DateTime value); public static implicit operator JsonNode(DateTime? value); public static implicit operator JsonNode(DateTimeOffset value); public static implicit operator JsonNode(DateTimeOffset? value); public static implicit operator JsonNode(decimal value); public static implicit operator JsonNode(decimal? value); public static implicit operator JsonNode(double value); public static implicit operator JsonNode(double? value); public static implicit operator JsonNode(Guid value); public static implicit operator JsonNode(Guid? value); public static implicit operator JsonNode(short value); public static implicit operator JsonNode(short? value); public static implicit operator JsonNode(int value); public static implicit operator JsonNode(int? value); public static implicit operator JsonNode(long value); public static implicit operator JsonNode(long? value); public static implicit operator JsonNode(sbyte value); public static implicit operator JsonNode(sbyte? value); public static implicit operator JsonNode(float value); public static implicit operator JsonNode(float? value); public static implicit operator JsonNode(string value); public static implicit operator JsonNode(ushort value); public static implicit operator JsonNode(ushort? value); public static implicit operator JsonNode(uint value); public static implicit operator JsonNode(uint? value); public static implicit operator JsonNode(ulong value); public static implicit operator JsonNode(ulong? value); public static explicit operator bool(JsonNode value); public static explicit operator bool?(JsonNode value); public static explicit operator byte(JsonNode value); public static explicit operator byte?(JsonNode value); public static explicit operator char(JsonNode value); public static explicit operator char?(JsonNode value); public static explicit operator DateTime(JsonNode value); public static explicit operator DateTime?(JsonNode value); public static explicit operator DateTimeOffset(JsonNode value); public static explicit operator DateTimeOffset?(JsonNode value); public static explicit operator decimal(JsonNode value); public static explicit operator decimal?(JsonNode value); public static explicit operator double(JsonNode value); public static explicit operator double?(JsonNode value); public static explicit operator Guid(JsonNode value); public static explicit operator Guid?(JsonNode value); public static explicit operator short(JsonNode value); public static explicit operator short?(JsonNode value); public static explicit operator int(JsonNode value); public static explicit operator int?(JsonNode value); public static explicit operator long(JsonNode value); public static explicit operator long?(JsonNode value); public static explicit operator sbyte(JsonNode value); public static explicit operator sbyte?(JsonNode value); public static explicit operator float(JsonNode value); public static explicit operator float?(JsonNode value); public static explicit operator string(JsonNode value); public static explicit operator ushort(JsonNode value); public static explicit operator ushort?(JsonNode value); public static explicit operator uint(JsonNode value); public static explicit operator uint?(JsonNode value); public static explicit operator ulong(JsonNode value); public static explicit operator ulong?(JsonNode value); public static JsonNode Parse(ref Utf8JsonReader reader, JsonNodeOptions? nodeOptions = default(JsonNodeOptions?)); public static JsonNode Parse(string json, JsonNodeOptions? nodeOptions = default(JsonNodeOptions?), JsonDocumentOptions documentOptions = default(JsonDocumentOptions)); public static JsonNode Parse(ReadOnlySpan<byte> utf8Json, JsonNodeOptions? nodeOptions = default(JsonNodeOptions?), JsonDocumentOptions documentOptions = default(JsonDocumentOptions)); public static JsonNode Parse(Stream utf8Json, JsonNodeOptions? nodeOptions = default(JsonNodeOptions?), JsonDocumentOptions documentOptions = default(JsonDocumentOptions)); public static Task<JsonNode> ParseAsync(Stream utf8Json, JsonNodeOptions? nodeOptions = default(JsonNodeOptions?), JsonDocumentOptions documentOptions = default(JsonDocumentOptions), CancellationToken cancellationToken = default(CancellationToken)); public string ToJsonString(JsonSerializerOptions options = null); public abstract void WriteTo(Utf8JsonWriter writer, JsonSerializerOptions options = null); } }