JsonType

Namespace: SnowBank.Data.Json · enum

Implements: IComparable, ISpanFormattable, IFormattable, IConvertible

Type of JSON value (String, Number, Boolean, Object, Array, Null, ...)

Fields

Array

Array = 5

JSON Array, an ordered list of zero or more elements.

Includes the empty array ([]), but cannot be null.

Boolean

Boolean = 1

JSON Boolean, either True or False.

DateTime

DateTime = 3

[EXTENSION] JSON Date, with or without a timezone.

This type only exists in memory while serializing CLR objects (for optimization purpose), and is serialized as a string literal.

The same field will be parsed back as a String value.

This type behaves the same way as a JsonString, and the caller should not use this type explicitly.

Null

Null = 0

Empty value, can either be an explicit null (usually denoted by the null literal in the source document), a missing value (ex: obj["does_not_exist"]), or an error of some kind

The is used when chaining (ex: obj["foo"]["bar"]["baz"]) and allows distinguishing between explicit null entries denoted by Null, vs missing fields.

Number

Number = 2

JSON Number, any integer, floating point, or decimal value.

Can express integer types up to , which may not be compatible with remote targets like JavaScript or Python.

Object

Object = 6

JSON Object, an unordered set of name/values pairs.

Includes the empty object (), but cannot be null.

String

String = 4

JSON String literal, a sequence of zero or more Unicode characters.

Includes the empty string (""), but cannot be null.