using System; using Newtonsoft.Json; namespace Kreta.Core.JsonConverter { public class StringTrimConverter : JsonConverter { public override string ReadJson(JsonReader reader, Type objectType, string existingValue, bool hasExistingValue, JsonSerializer serializer) { if (reader.TokenType == JsonToken.String) { var value = (string)reader.Value; if (string.IsNullOrWhiteSpace(value)) { return null; } return value.Trim(); } return null; } public override void WriteJson(JsonWriter writer, string value, JsonSerializer serializer) { if (value is null) { writer.WriteNull(); } else { writer.WriteValue(value); } } } }