如何创建JSON.. NET日期到字符串自定义转换器

本文关键字:日期 字符串 自定义 转换器 NET JSON 何创建 创建 | 更新日期: 2023-09-27 18:18:54

有人能告诉我请我如何创建一个自定义转换器

我知道我可以使用JSON。. NET ISODateConvertor,但我想要的是具体的,我只是想发送值为"日/月/年"字符串上的响应。

如何创建JSON.. NET日期到字符串自定义转换器

像这样?

string str = JsonConvert.SerializeObject(new DateTimeClass(), new MyDateTimeConvertor());
public class DateTimeClass
{
    public DateTime dt;
    public int dummy = 0;
}
public class MyDateTimeConvertor : DateTimeConverterBase
{
    public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
    {
        return DateTime.Parse(reader.Value.ToString());
    }
    public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
    {
        writer.WriteValue( ((DateTime)value).ToString("dd/MM/yyyy") );
    }
}

如果您正在使用Web Api,请使用以下命令将自定义格式化器添加到配置中:

config.Formatters.JsonFormatter.SerializerSettings.Converters.Add(new MyDateTimeConvertor())