2012-02-09 47 views
4

在Windows 7中区域和语言设置,我的整体的“格式”设置为“英语(美国)”,但我个人模式的日期&时间设置如下......CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern in .Net 3.5中损坏?

长日期:dddd, dd MMMM, yyyy

简短日期:MM/dd/yyyy

时间长:HH:mm:ss

时间短:HH:mm

当我运行下面,针对.NET 4.0

static void Main(string[] args) 
{ 
    Console.WriteLine(System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.LongDatePattern); 
    Console.WriteLine(System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern); 
    Console.WriteLine(System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.LongTimePattern); 
    Console.WriteLine(System.Globalization.CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern); 
} 

我最终的结果如你所期望,

dddd, dd MMMM, yyyy 
MM/dd/yyyy 
HH:mm:ss 
HH:mm 

但是,如果我运行它针对的.Net 3.5(或如下图),我得到的:

dddd, dd MMMM, yyyy 
MM/dd/yyyy 
HH:mm:ss 
h:mm tt 

你会注意到,长时间格式使用我选择的Windows格式,但短期人似乎使用“英语(美国)”的默认。

我可以俯视吗?

+1

自定义格式的.NET支持与Windows支持不同步。它需要支持像Windows 98和2000这样的老操作系统,这是相当不可避免的。它们都被Windows 7和.NET 4所修复。 – 2012-02-10 01:04:13

回答