关于时间类型时区的疑问 返回

SqlSugar 沟通中
1 155

表里有个testDto类型的JSON字段,testDto里面包含一个DateTime类型的字段,从接口收到2026-10-12 12:10:22这样的时间,数据库里面testDto被序列化了,字符串确实也是2026-10-12 12:10:22。

然后数据查询的时候反序列化为testDto之后看到Kind变成了utc,结果就导致webapi在输出的时候,把它当成了UTC时间去转换为时间戳,得到的时间戳额外多加了8个小时,由于webapi服务使用的是NewtonsoftJson来序列化,全局的设置,不能随便改,否则会导致其他正常的时间在输出的时候也错乱。

问题就在于sqlsugar查询得到的这个时间类型的字段Kind变成了utc,如果是local或者未设置,就不会这样了。sqlsugar如何设置时间类型的字段在处理的时候都当做本地时间去处理,除非是使用了DateTimeOffset这种带时区的类型。


热忱回答1

  • 可以用自定义类型替换JSON类型。

    0 回复