Namespace Azos.Serialization.JSON
Classes
JSONDataArray
Represents a data transfer object (DTO) JSON array, that holds a list of values
JSONDataMap
Represents a data transfer object (DTO) JSON map, that associates keys with values
JSONDeserializationException
Base exception thrown by the JSON when deserializing objects
JSONDynamicObject
Implements a JSON dynamic object that shapes itself at runtime
JSONException
Base exception thrown by the JSON serialization format
JSONExtensions
Provides JSON extension methods
JSONReader
Provides deserialization functionality from JSON format
JSONSerializationException
Base exception thrown by the JSON when serializing objects
JSONWriter
Writes primitive types, JSONDataObjects, JSONDynamicObjects, IEnumerable and IDictionary - implementers into string or stream. Can also write IJSONWritable-implementing types that directly serialize their state into JSON. This class does not serialize regular CLR types (that do not implement IJSONWritable), use JSONSerializer for full functionality
JSONWritingOptions
Specifies how JSON should be written as text. Use JSONWritingOptions.Compact or JSONWritingOptions.PrettyPrint static properties for typical options
Structs
JSONReader.NameBinding
Specifies how reader should match JSON to row field property member or backend names
NLSMap
Represents a JSON-serializable structure that keys [N]ame and [D]escription on lang ISO. It respects JSONWritingOptions.NLSMapLanguageISO and NLSMapLanguageISODefault
NLSMap.Builder
Facilitates the population of NLSMap from code
NLSMap.NDPair
Localized Name:Description pair
Interfaces
IJSONDataObject
Represents a data transfer object (DTO) abstraction used to read/write JSON data
IJSONReadable
Denotes a CLR type-safe entity (class or struct) that can directly read itself from IJSONDataObject which is supplied by JSON parser. This mechanism bypasses all of the reflection/dynamic code. This approach may be far more performant for some classes that need to de-serialize their state/data from JSON format, than relying on general-purpose JSON serializer that can deserialize any type but is slower. The particular type has to be allocated first, then it's instance can be hydrated with data/state using this method
IJSONWritable
Denotes a CLR type-safe entity (class or struct) that can directly write itself as JSON content string. This mechanism bypasses all of the reflection/dynamic code. This approach may be far more performant for some classes that need to serialize their state/data in JSON format, than relying on general-purpose JSON serializer that can serialize any type but is slower
Enums
JSONDynamicObjectKind
Specifies what kind the dynamic object is - map or array
JSONReader.NameBinding.By
JSONSerializationPurpose
Specifies the purpose of JSON serialization so the level of detail may be dynamically adjusted. Depending on this parameter IJSONWritable implementors may include additional details that are otherwise not needed