public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) { var converter = new StrongTypeIdConverter(objectType); var strongTypeId = converter.ConvertFrom(reader.Value); return(strongTypeId); }
public override StrongTypeId <TValue> Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) { var idValue = JsonSerializer.Deserialize <TValue>(ref reader, options); var converter = new StrongTypeIdConverter <TValue>(typeToConvert); var strongTypeId = converter.ConvertFrom(idValue); return((StrongTypeId <TValue>)strongTypeId); }
public override object ParseValue(object value) { if (value is TType) { return(value); } var typeConverter = new StrongTypeIdConverter(typeof(TType)); return((TType)typeConverter.ConvertFrom(value)); }