我在尝试从json反序列化DateTimeOffset时遇到了问题。我看到这里有很多相关的问题,但似乎都没能解决我的问题。我从json中得到的dateTime是:05/04/2019 02:39:33 PM GMT,并且我想将偏移量保留为零。但在反序列化后,我得到的对象拥有相同的时间(在这种情况下是下午02:39:33),但是却带有我的时区(+02:00)。我尝试了以下两个解决方法,但是都没有成功:
首先,我尝试对反序列化器进行配置:
因此,我期望的结果是: 2019年5月4日下午2:39:33 +00:00 感谢所有回答我的人! 最初的回答
首先,我尝试对反序列化器进行配置:
JsonSerializerSettings serializerSettings = new JsonSerializerSettings
{
DateFormatHandling = DateFormatHandling.IsoDateFormat,
DateTimeZoneHandling = DateTimeZoneHandling.Utc,
DateParseHandling = DateParseHandling.DateTimeOffset,
DateFormatString = "dd/MM/yyyy hh:mm:ss tt 'GMT'"
};
我也尝试了这个转换器:
最初的回答
class DateFormatConverter : IsoDateTimeConverter
{
public DateFormatConverter(string format)
{
DateTimeFormat = format;
DateTimeStyles = System.Globalization.DateTimeStyles.AssumeUniversal;
}
因此,我期望的结果是: 2019年5月4日下午2:39:33 +00:00 感谢所有回答我的人! 最初的回答