Можно изменить культуру текущего потока в файле Global.asax и переопределить формат даты, например:
using System.Globalization;
using System.Threading;
//...
protected void Application_BeginRequest(Object sender, EventArgs e)
{
CultureInfo newCulture = (CultureInfo) System.Threading.Thread.CurrentThread.CurrentCulture.Clone();
newCulture.DateTimeFormat.ShortDatePattern = "dd-MMM-yyyy";
newCulture.DateTimeFormat.DateSeparator = "-";
Thread.CurrentThread.CurrentCulture = newCulture;
}
Можно установить культуру без управления:
using System.Globalization;
using System.Threading;
//...
protected void Application_BeginRequest(Object sender, EventArgs e)
{
Thread.CurrentThread.CurrentCulture = Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-NZ");
}
Для строк формата символ формата / на самом деле не решает к литералу "/", как Вы ожидали бы. Вместо этого это решает к разделителю времени текущей даты, как настроено в Ваших региональных настройках. Попытайтесь изменить DateTimeFormatInfo. Свойство DateSeparator.
Для получения дополнительной информации, см.: http://msdn.microsoft.com/en-us/library/8kb3ddd4.aspx
В файле web.config установите тег согласно следующей документации
<system.web>
<globalization culture="en-NZ" uiCulture="en-NZ"/>
</system.web>