В настройках региона и языка в Windows 7 мой общий «Формат» установлен на «Английский (США)», но мои индивидуальные шаблоны для даты и времени установлены следующим образом ...
Длинная дата: 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, но, по-видимому, для короткого формата используется значение по умолчанию "Английский (США)".
Я что-то пропускаю?