Table of Contents

Enum SerializeDefaultValuesPolicy

Namespace
Nerdbank.Json
Assembly
Nerdbank.Json.dll

Specifies the policy for serializing default values.

[Flags]
public enum SerializeDefaultValuesPolicy

Fields

Always = Required | ValueTypes | ReferenceTypes

Serialize all properties, regardless of their values.

Never = 0

Do not serialize any default values.

ReferenceTypes = 4

Serialize default values for reference types.

Required = 1

Serialize default values when they are required by the contract.

Requiredness follows the type shape's constructor parameter metadata, including property initializers and explicit PropertyShapeAttribute overrides.

ValueTypes = 2

Serialize default values for value types.

Remarks

A property's default is its matching constructor parameter's declared default, when available, otherwise its DefaultValueAttribute value, otherwise the CLR default. Property initializers alone do not declare a serialization default.