System.Text.Json.Serialization.Metadata.JsonMetadataServices
Provides helpers to create and initialize metadata for JSON-serializable types.
namespace System.Text.Json.Serialization.Metadata
{
public static class JsonMetadataServices
{
public static JsonConverter<bool> BooleanConverter { get; }
public static JsonConverter<byte[]> ByteArrayConverter { get; }
public static JsonConverter<byte> ByteConverter { get; }
public static JsonConverter<char> CharConverter { get; }
public static JsonConverter<DateTime> DateTimeConverter { get; }
public static JsonConverter<DateTimeOffset> DateTimeOffsetConverter { get; }
public static JsonConverter<DateOnly> DateOnlyConverter { get; }
public static JsonConverter<TimeOnly> TimeOnlyConverter { get; }
public static JsonConverter<decimal> DecimalConverter { get; }
public static JsonConverter<double> DoubleConverter { get; }
public static JsonConverter<Guid> GuidConverter { get; }
public static JsonConverter<short> Int16Converter { get; }
public static JsonConverter<int> Int32Converter { get; }
public static JsonConverter<long> Int64Converter { get; }
public static JsonConverter<Int128> Int128Converter { get; }
public static JsonConverter<UInt128> UInt128Converter { get; }
public static JsonConverter<JsonArray> JsonArrayConverter { get; }
public static JsonConverter<JsonElement> JsonElementConverter { get; }
public static JsonConverter<JsonNode> JsonNodeConverter { get; }
public static JsonConverter<JsonObject> JsonObjectConverter { get; }
public static JsonConverter<JsonValue> JsonValueConverter { get; }
public static JsonConverter<JsonDocument> JsonDocumentConverter { get; }
public static JsonConverter<Memory<byte>> MemoryByteConverter { get; }
public static JsonConverter<ReadOnlyMemory<byte>> ReadOnlyMemoryByteConverter { get; }
public static JsonConverter<object> ObjectConverter { get; }
public static JsonConverter<Half> HalfConverter { get; }
public static JsonConverter<float> SingleConverter { get; }
public static JsonConverter<sbyte> SByteConverter { get; }
public static JsonConverter<string> StringConverter { get; }
public static JsonConverter<TimeSpan> TimeSpanConverter { get; }
public static JsonConverter<ushort> UInt16Converter { get; }
public static JsonConverter<uint> UInt32Converter { get; }
public static JsonConverter<ulong> UInt64Converter { get; }
public static JsonConverter<Uri> UriConverter { get; }
public static JsonConverter<Version> VersionConverter { get; }
public static JsonTypeInfo<TElement[]> CreateArrayInfo<[Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TElement[]> collectionInfo);
public static JsonTypeInfo<TCollection> CreateListInfo<[Nullable(0)] TCollection, [Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : List<TElement>;
public static JsonTypeInfo<TCollection> CreateDictionaryInfo<[Nullable(0)] TCollection, TKey, [Nullable(2)] TValue>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : Dictionary<TKey, TValue>;
public static JsonTypeInfo<TCollection> CreateImmutableDictionaryInfo<[Nullable(0)] TCollection, TKey, [Nullable(2)] TValue>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo, Func<IEnumerable<KeyValuePair<TKey, TValue>>, TCollection> createRangeFunc) where TCollection : IReadOnlyDictionary<TKey, TValue>;
public static JsonTypeInfo<TCollection> CreateIDictionaryInfo<[Nullable(0)] TCollection, TKey, [Nullable(2)] TValue>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : IDictionary<TKey, TValue>;
public static JsonTypeInfo<TCollection> CreateIReadOnlyDictionaryInfo<[Nullable(0)] TCollection, TKey, [Nullable(2)] TValue>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : IReadOnlyDictionary<TKey, TValue>;
public static JsonTypeInfo<TCollection> CreateImmutableEnumerableInfo<[Nullable(0)] TCollection, [Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo, Func<IEnumerable<TElement>, TCollection> createRangeFunc) where TCollection : IEnumerable<TElement>;
public static JsonTypeInfo<TCollection> CreateIListInfo<[Nullable(0)] TCollection>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : IList;
public static JsonTypeInfo<TCollection> CreateIListInfo<[Nullable(0)] TCollection, [Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : IList<TElement>;
public static JsonTypeInfo<TCollection> CreateISetInfo<[Nullable(0)] TCollection, [Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : ISet<TElement>;
public static JsonTypeInfo<TCollection> CreateIReadOnlySetInfo<[Nullable(0)] TCollection, [Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : IReadOnlySet<TElement>;
public static JsonTypeInfo<TCollection> CreateICollectionInfo<[Nullable(0)] TCollection, [Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : ICollection<TElement>;
public static JsonTypeInfo<TCollection> CreateStackInfo<[Nullable(0)] TCollection, [Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : Stack<TElement>;
public static JsonTypeInfo<TCollection> CreateQueueInfo<[Nullable(0)] TCollection, [Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : Queue<TElement>;
public static JsonTypeInfo<TCollection> CreateConcurrentStackInfo<[Nullable(0)] TCollection, [Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : ConcurrentStack<TElement>;
public static JsonTypeInfo<TCollection> CreateConcurrentQueueInfo<[Nullable(0)] TCollection, [Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : ConcurrentQueue<TElement>;
public static JsonTypeInfo<TCollection> CreateIEnumerableInfo<[Nullable(0)] TCollection, [Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : IEnumerable<TElement>;
public static JsonTypeInfo<TCollection> CreateIAsyncEnumerableInfo<[Nullable(0)] TCollection, [Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : IAsyncEnumerable<TElement>;
public static JsonTypeInfo<TCollection> CreateIDictionaryInfo<[Nullable(0)] TCollection>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : IDictionary;
public static JsonTypeInfo<TCollection> CreateStackInfo<[Nullable(0)] TCollection>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo, Action<TCollection, object> addFunc) where TCollection : IEnumerable;
public static JsonTypeInfo<TCollection> CreateQueueInfo<[Nullable(0)] TCollection>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo, Action<TCollection, object> addFunc) where TCollection : IEnumerable;
public static JsonTypeInfo<TCollection> CreateIEnumerableInfo<[Nullable(0)] TCollection>(JsonSerializerOptions options, JsonCollectionInfoValues<TCollection> collectionInfo) where TCollection : IEnumerable;
public static JsonTypeInfo<Memory<TElement>> CreateMemoryInfo<[Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<Memory<TElement>> collectionInfo);
public static JsonTypeInfo<ReadOnlyMemory<TElement>> CreateReadOnlyMemoryInfo<[Nullable(2)] TElement>(JsonSerializerOptions options, JsonCollectionInfoValues<ReadOnlyMemory<TElement>> collectionInfo);
public static JsonConverter<T> GetUnsupportedTypeConverter<[Nullable(2)] T>();
public static JsonConverter<T> GetEnumConverter<[Nullable(0)] T>(JsonSerializerOptions options) where T : struct, Enum;
public static JsonConverter<T?> GetNullableConverter<T>(JsonTypeInfo<T> underlyingTypeInfo) where T : struct;
public static JsonConverter<T?> GetNullableConverter<T>(JsonSerializerOptions options) where T : struct;
public static JsonPropertyInfo CreatePropertyInfo<[Nullable(2)] T>(JsonSerializerOptions options, JsonPropertyInfoValues<T> propertyInfo);
public static JsonTypeInfo<T> CreateObjectInfo<T>(JsonSerializerOptions options, JsonObjectInfoValues<T> objectInfo);
public static JsonTypeInfo<T> CreateValueInfo<[Nullable(2)] T>(JsonSerializerOptions options, JsonConverter converter);
}
}