Table of Contents

Class WorkTimeConverter2

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

Converts a WorkTime to JSON.

public class WorkTimeConverter2 : GeotabJsonConverter2<WorkTime>
Inheritance
WorkTimeConverter2
Inherited Members

Constructors

WorkTimeConverter2()

public WorkTimeConverter2()

Properties

ShouldSerializeProp

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

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

Property Value

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

WorkTime

The value that was converted.

Remarks

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

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

Parameters

writer Utf8JsonWriter

The writer.

value WorkTime

The value.

options JsonSerializerOptions

The serializer options.