У меня проблема, когда я развертываю свое веб-приложение на разных серверах. Кажется, существует несоответствие в некоторых шаблонах DateTimeFormat
, таких как ShortDatePattern
, использующих одну и ту же культуру (pt-BR).
На моем компьютере для разработки (установлена Windows 7, .NET 4, приложение, ориентированное на .NET 3.5) и на сервере Windows Server 2008 R2 (с приложением, ориентированным на .NET 4) ShortDatePattern равен "dd/MM/yyyy"
- что, я думаю, правильно.
На рабочем сервере (Windows Server 2003, использующий .NET 3.5) это "d/M/yyyy"
. Это доставляет мне массу неприятностей.
Я мог бы решить эту проблему, установив шаблоны вручную, но мне бы очень хотелось не делать этого каждый раз, когда мне нужно вывести дату. Тем более, что это будет нетривиально во многих местах (например, где я использую MVC Html.TextBoxFor) и потребует большого количества переписывания.
Если есть способ изменить шаблоны для всего веб-приложения в одном месте, это было бы здорово. Я пробовал следующий подход в файле Global.asax.cs
, но безуспешно:
CultureInfo info = new CultureInfo(System.Threading.Thread.CurrentThread.CurrentCulture.ToString());
info.DateTimeFormat.ShortDatePattern = "dd/MM/yyyy";
System.Threading.Thread.CurrentThread.CurrentCulture = info;
Любые идеи?
Спасибо.