Table of Contents

Class DeviceConverter2

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

Json converter for Device.

public class DeviceConverter2 : GeotabJsonConverter2<Device>
Inheritance
DeviceConverter2
Inherited Members

Constructors

DeviceConverter2()

public DeviceConverter2()

Properties

ShouldSerializeProp

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

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

Property Value

Func<PropertyInfo, Device, 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 Device 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

Device

The value that was converted.

Remarks

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

WriteJson(Utf8JsonWriter, Device?, 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, Device? value, JsonSerializerOptions options)

Parameters

writer Utf8JsonWriter

The writer.

value Device

The value.

options JsonSerializerOptions

The serializer options.