是否可以使用[JsonProperty]属性将任何空字符串或填充空格转换为null?
类似的东西:
public class Request
{
[JsonProperty(NullOrWhiteSpaceValueHandling)]
public string Description {get;set;}
}
与渲染时跳过空值的方式相同。 当这个属性为"空"该值未设置。
答案 0 :(得分:3)
您需要实现自定义JsonConverter
并将其分配给TrimmingConverter
属性的JsonProperty
属性。有一个编写客户TrimmingConverter
详细here的示例。一旦你有类似于这个实现的东西,你应该能够设置NullValueHandling
和ItemConverterType
属性。这将确保转换器将修剪字符串,如果它为null或空或空格 - 它将被忽略以进行序列化。
public class Request
{
[
JsonProperty(NullValueHandling = NullValueHandling.Ignore,
ItemConverterType = typeof(TrimmingConverter))
]
public string Description { get; set; }
}
以下是JsonProperty
的官方文档。