JsonSerializerOptions Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Provides options to be used with JsonSerializer.
public ref class JsonSerializerOptions sealed
public sealed class JsonSerializerOptions
type JsonSerializerOptions = class
Public NotInheritable Class JsonSerializerOptions
- Inheritance
-
JsonSerializerOptions
Remarks
For more information, see How to serialize and deserialize JSON.
Constructors
JsonSerializerOptions() |
Initializes a new instance of the JsonSerializerOptions class. |
JsonSerializerOptions(JsonSerializerDefaults) |
Constructs a new JsonSerializerOptions instance with a predefined set of options determined by the specified JsonSerializerDefaults. |
JsonSerializerOptions(JsonSerializerOptions) |
Copies the options from a JsonSerializerOptions instance to a new instance. |
Properties
AllowOutOfOrderMetadataProperties |
Allows JSON metadata properties to be specified after regular properties in a deserialized JSON object. |
AllowTrailingCommas |
Get or sets a value that indicates whether an extra comma at the end of a list of JSON values in an object or array is allowed (and ignored) within the JSON payload being deserialized. |
Converters |
Gets the list of user-defined converters that were registered. |
Default |
Gets a read-only, singleton instance of JsonSerializerOptions that uses the default configuration. |
DefaultBufferSize |
Gets or sets the default buffer size, in bytes, to use when creating temporary buffers. |
DefaultIgnoreCondition |
Gets or sets a value that determines when properties with default values are ignored during serialization or deserialization. The default value is Never. |
DictionaryKeyPolicy |
Gets or sets the policy used to convert a IDictionary key's name to another format, such as camel-casing. |
Encoder |
Gets or sets the encoder to use when escaping strings, or |
IgnoreNullValues |
Obsolete.
Gets or sets a value that indicates whether |
IgnoreReadOnlyFields |
Gets or sets a value that indicates whether read-only fields are ignored during serialization. A field is read-only if it is marked with the |
IgnoreReadOnlyProperties |
Gets or sets a value that indicates whether read-only properties are ignored during serialization. The default value is |
IncludeFields |
Gets or sets a value that indicates whether fields are handled during serialization and deserialization.
The default value is |
IndentCharacter |
Defines the indentation character being used when WriteIndented is enabled. Defaults to the space character. |
IndentSize |
Defines the indentation size being used when WriteIndented is enabled. Defaults to two. |
IsReadOnly |
Gets a value that indicates whether the current instance has been locked for user modification. |
MaxDepth |
Gets or sets the maximum depth allowed when serializing or deserializing JSON, with the default value of 0 indicating a maximum depth of 64. |
NewLine |
Gets or sets the new line string to use when WriteIndented is The default is the value of NewLine. |
NumberHandling |
Gets or sets an object that specifies how number types should be handled when serializing or deserializing. |
PreferredObjectCreationHandling |
Gets or sets the preferred object creation handling for properties when deserializing JSON. |
PropertyNameCaseInsensitive |
Gets or sets a value that indicates whether a property's name uses a case-insensitive comparison during deserialization. The default value is |
PropertyNamingPolicy |
Gets or sets a value that specifies the policy used to convert a property's name on an object to another format, such as camel-casing, or |
ReadCommentHandling |
Gets or sets a value that defines how comments are handled during deserialization. |
ReferenceHandler |
Gets or sets an object that specifies how object references are handled when reading and writing JSON. |
RespectNullableAnnotations |
Gets or sets a value that indicates whether nullability annotations should be respected during serialization and deserialization. |
RespectRequiredConstructorParameters |
Gets or sets a value that indicates whether non-optional constructor parameters should be specified during deserialization. |
TypeInfoResolver |
Gets or sets the JsonTypeInfo contract resolver used by this instance. |
TypeInfoResolverChain |
Gets the list of chained JsonTypeInfo contract resolvers used by this instance. |
UnknownTypeHandling |
Gets or sets an object that specifies how deserializing a type declared as an Object is handled during deserialization. |
UnmappedMemberHandling |
Gets or sets an object that specifies how JsonSerializer handles JSON properties that cannot be mapped to a specific .NET member when deserializing object types. |
Web |
Gets a read-only, singleton instance of JsonSerializerOptions that uses the web configuration. |
WriteIndented |
Gets or sets a value that indicates whether JSON should use pretty printing. By default, JSON is serialized without any extra white space. |
Methods
AddContext<TContext>() |
Obsolete.
Appends a new JsonSerializerContext to the metadata resolution of the current JsonSerializerOptions instance. |
Equals(Object) |
Determines whether the specified object is equal to the current object. (Inherited from Object) |
GetConverter(Type) |
Returns the converter for the specified type. |
GetHashCode() |
Serves as the default hash function. (Inherited from Object) |
GetType() |
Gets the Type of the current instance. (Inherited from Object) |
GetTypeInfo(Type) |
Gets the JsonTypeInfo contract metadata resolved by the current JsonSerializerOptions instance. |
MakeReadOnly() |
Marks the current instance as read-only to prevent any further user modification. |
MakeReadOnly(Boolean) |
Marks the current instance as read-only preventing any further user modification. |
MemberwiseClone() |
Creates a shallow copy of the current Object. (Inherited from Object) |
ToString() |
Returns a string that represents the current object. (Inherited from Object) |
TryGetTypeInfo(Type, JsonTypeInfo) |
Tries to get the JsonTypeInfo contract metadata resolved by the current JsonSerializerOptions instance. |
Extension Methods
GetJsonSchemaAsNode(JsonSerializerOptions, Type, JsonSchemaExporterOptions) |
Generates a JSON schema corresponding to the contract metadata of the specified type. |
Applies to
.NET