на машине разработчика (cassini)
new DateTime(2012,3,14).ToString("d")
результаты в
14/03/2012
, что правильно, но при развертывании на полном сервере IIS результат равен
03/14/2012
Сервер установлен на панели управления / Язык региона для всех языков: английский / Великобритания / ГБ, дата выполнения в командной строке возвращает формат dd / MM / YYYY.
Сайт настроен как для uiCulture="en-GB"
, так и для culture="en-GB"
, и они отображаются в теге глобализации web.config.
Я могу обойти эту проблему, добавив принудительную культуру
new DateTime(2012,3,14).ToString("d", new CultureInfo("en-GB"));
но мне бы очень хотелось узнать, что неправильно устанавливает формат.
CultureInfo.CurrentCulture.Name, CultureInfo.CurrentUICulture.Name
оба возвращаются en-US
- ru-RU :
M/d/yyyy
(например, 14.03.2012)
- ru-RU :
dd/MM/yyyy
(например, 14/03/2012)
Фактическое значение в web.config
<globalization requestEncoding="UTF-8" responseEncoding="UTF-8" uiCulture="en-GB" culture="en-GB" />