我有一个场景,用户从角度输入日期(例如 2018 年 11 月 30 日)。当我将此日期从 json 解析为 c# 时,它以 11/30/2018 4:00 或任何时区出现。如果我在像美国一样的 -UTC 时区,这很好。如果我在印度或日本有用户,则会转换为 2018 年 11 月 29 日 5:30。这不好。
无论用户居住在哪个时区,如何转换 json 并保留用户输入的日期?
如果用户在加利福尼亚州输入 11/30/2018,而用户在日本输入 11/30/2018,则两种情况下的最终结果都需要为 11/30/2018 0:00
这是我下面的转换代码
strChangedData = [{\"EndDt\":\"2018-11-30T04:00:00.000Z\"}]
List<MyModel> objMyModel = (List<MyModel>)Newtonsoft.Json.JsonConvert.DeserializeObject(strChangedData,
typeof(List<MyModel>), GetJsonSettings());
public static JsonSerializerSettings GetJsonSettings()
{
var settings = new JsonSerializerSettings
{
DateFormatHandling = DateFormatHandling.IsoDateFormat,
DateTimeZoneHandling = DateTimeZoneHandling.Utc,
DateParseHandling = DateParseHandling.DateTime
};
return settings;
}
Cats萌萌
炎炎设计
慕村9548890
慕村225694
相关分类