我正在尝试DateTime
使用 .NET 4.5 上的以下 C# 代码从对象中获取字符串:
var dateTime = new DateTime(2015, 9, 30);
var str = dateTime.ToString("M/d/yyyy");
Console.WriteLine(str);
在正常情况下,此代码的输出是 2015 年 9 月 30 日,正如预期的那样。
但是,如果我转到控制面板、区域和语言并将美国英语的“短日期”模式更改为“dd-MMM-yy”,上面的代码会突然显示 9-30-2015!
有谁知道为什么会发生这种情况以及它如何修复/解决?请注意,例如,如果我在区域和语言中选择另一个短日期模式,例如“M/d/yy”,则代码可以正常工作。