2012-02-09 1 views
4

В Windows 7 области и настройки языка, мой общий «Формат» установлено значение «Английский (США)», но мои индивидуальные шаблоны для дат & раз установлены следующим образом ...CultureInfo.CurrentCulture.DateTimeFormat.ShortTimePattern, поврежденный в .Net 3.5?

Длинная дата: dddd, dd MMMM, yyyy

Short дата: 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 

Вы заметите, что формат долгое время использует мой выбранный формат окна, но короткий, кажется, использует по умолчанию для «английский (США)».

Я что-то пропускаю?

+1

Поддержка .NET для пользовательских форматов была несовместима с поддержкой Windows. Достаточно неизбежно, что ему необходимо поддерживать старые операционные системы, такие как Windows 98 и 2000. Все это исправлено с помощью Windows 7 и .NET 4. Progress. –

ответ