【发布时间】:2017-12-21 19:44:30
【问题描述】:
我需要同时期待:dd/MM/yyyy 和 dd/MM/yyyy HH:mm:ss
var dateTimeConverter = new IsoDateTimeConverter { DateTimeFormat = "dd/MM/yyyy HH:mm:ss" };
var resultado = JsonConvert.DeserializeObject<MyObject>(json, dateTimeConverter);
使用此代码,我收到以下错误消息:
System.FormatException: '字符串未被识别为有效的 DateTime。'
【问题讨论】:
-
如果 JSON 具有这些格式,则它不是有效的 JSON,因此反序列化器不需要识别它们。最好是编写这些的系统应该是固定的,否则您必须为这些字段编写自己的反序列化代码。
-
@SamiKuhmonen json 规范没有定义日期格式,所以不能说它的 json 无效。
-
@Evk 我会被诅咒并得到纠正。他们应该虽然:P
-
@Evk 是正确的,但请注意,在任何公共 API 中,de facto 标准都是 ISO8601 (
yyyy-MM-ddTHH:mm:ssZ)。但是,以其他特定于语言环境的格式传递它是完全合理的,特别是如果该字段旨在直接在客户端应用程序中呈现。 (只是不在 API 中)。 ;)