public override void WriteJson(JsonWriter writer, RequestQueryInstance <T> value, JsonSerializer serializer) { var jsonConverted = JsonConvert.SerializeObject(value.QueryInstance, new JsonSerializerSettings { NullValueHandling = _parentRequest.IncludeNullValuesInSerializedOutput ? NullValueHandling.Include : NullValueHandling.Ignore, DefaultValueHandling = _parentRequest.IncludeDefaultValuesInSerializedOutput ? DefaultValueHandling.Include : DefaultValueHandling.Ignore, Converters = { new FormatNumbersAsTextConverter() } }); // only parse a second time if we have an omit to insert. if (value.Omit) { var jo = JObject.Parse(jsonConverted); // as always, filemaker is stringly typed... jo.Add("omit", "true"); // overwrite original since we have an omit situation jsonConverted = jo.ToString(); } writer.WriteRawValue(jsonConverted); }
public override RequestQueryInstance <T> ReadJson(JsonReader reader, Type objectType, RequestQueryInstance <T> existingValue, bool hasExistingValue, JsonSerializer serializer) { throw new NotImplementedException(); }