【发布时间】:2021-01-26 12:47:44
【问题描述】:
我必须解析两种不同的 DateTime 格式:dd/MM/yyy 和 dd-MM-yy。
该字符串来自item.EmploymentDate,它通常是两种格式之一,我需要将其解析为DateTime 对象。
到目前为止我的代码:
var formatStrings = new string[] { "dd/MM/yyyy", "dd-MM-yyy" };
DateTime.TryParseExact(item.EmploymentDate, formatStrings, CultureInfo.InvariantCulture, DateTimeStyles.None, out DateTime resultDate);
employee.Details.EmploymentDate = resultDate;
但是,resultDate 最终成为默认的 DateTime 对象 {1/1/0001 12:00:00 AM},而不是来自 item.EmploymentDate 的值。我可以确认它们不为空。第一个是"30-03-1999"。
我做错了什么?
【问题讨论】:
-
您应该始终检查
TryParse(Exact)的返回值,以确保解析确实有效。
标签: c# datetime datetime-format