【发布时间】:2015-08-28 09:50:18
【问题描述】:
我目前有一个时间报告项目,您可以在其中输入日期并报告该日期的时间,(所有日期都以瑞典格式显示并发送回后端等yy-mm-dd)
但是,如果我的计算机上有其他文化信息,例如 dd-mm-yyyy,它会解析错误的日期并且无法正常工作。
这是我的代码
DateTime reportDate;
if (!DateTime.TryParse(result, out reportDate))
{
ModelState.AddModelError("Date", "Felaktikt datum");
}
这将获取我的yy-mm-dd 并将其解析为dd-mm-yyyy,因为这是我的计算机设置的。
【问题讨论】:
-
"所有日期都以瑞典格式显示并发送回后端等 yy-mm-dd" - 为什么?我建议您查看
DateTime.TryParseExact并指定那里的文化,如果您真的需要的话 - 但是使用人类文化日期格式进行机器对机器通信是一个非常糟糕的 ida。 -
DateTime.TryParseExact(result, formats, new CultureInfo("sv-SE""), DateTimeStyles.None, out reportDate)
-
因为这是我被告知要做的,所以日期应该显示为 yy-mm-dd。