Table of Contents

Class KeyConverter2

Namespace
Geotab.Checkmate.Serialization
Assembly
Geotab.Checkmate.ObjectModel.dll

Json converter for Key

public class KeyConverter2 : GeotabJsonConverter2<Key>
Inheritance
KeyConverter2
Inherited Members

Constructors

KeyConverter2()

public KeyConverter2()

Properties

ShouldSerializeProp

Gets a Func that controls which properties are serialized, and handles any non-standard property serialization.

protected virtual Func<PropertyInfo, Key, object?> ShouldSerializeProp { get; }

Property Value

Func<PropertyInfo, Key, object>

A Func that takes a PropertyInfo and the object containing that property. This Func should return one of three things: the Serialize object which tells the caller to serialize this property, the DontSerialize object which tells the caller to skip this property, or a value to be serialized.

Methods

Read(ref Utf8JsonReader, Type, JsonSerializerOptions)

Read and convert the JSON to T.

public override Key Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options)

Parameters

reader Utf8JsonReader

The Utf8JsonReader to read from.

typeToConvert Type

The Type being converted.

options JsonSerializerOptions

The JsonSerializerOptions being used.

Returns

Key

The value that was converted.

Remarks

A converter may throw any Exception, but should throw JsonException when the JSON is invalid.

WriteJson(Utf8JsonWriter, Key?, JsonSerializerOptions)

Same as WriteJson{JsonWriter, object, JsonSerializerOptions} but after the null check has been performed. If value is null it is OK to write.

public override void WriteJson(Utf8JsonWriter writer, Key? value, JsonSerializerOptions options)

Parameters

writer Utf8JsonWriter

The writer.

value Key

The value.

options JsonSerializerOptions

The serializer options.