奇怪的.NET DateTime问题(月份是00 ??)

时间:2013-05-01 19:40:09

标签: c# .net datetime

如下所示,我遇到了一种奇怪的行为。

我试图用一年,一个月和一天实例化一个DateTime(简单!)。

但在调试模式下,Date显示月份00,而Month显示4!

我的解决方案中可能存在配置问题?我在ASP .NET MVC 4应用程序中工作。

00 instead of 04

Date and Month differences

1 个答案:

答案 0 :(得分:8)

这是因为某处的格式字符串错误,可能会使"MM"(月份)与"mm"(分钟)混淆,就像@Silvermind在对该问题的评论中所说的那样。我可以像这样重现这个问题:

var badCulture = new CultureInfo("");
badCulture.DateTimeFormat.ShortDatePattern = "dd-mm-yyyy";
Thread.CurrentThread.CurrentCulture = badCulture;

var testDate = new DateTime(2013, 4, 24);  // debug and rest mouse over variable

请检查某人是否在某处使用了错误的格式字符串。