如何在ASP.NET中全局设置日期格式?
我的本地机器和服务器的区域设置设置为“英语(新西兰)”。
例如,当我用dd/MM/yyyy
格式化日期时,我希望看到今天的19/11/2008
。
直到最近,这实际上是我从本地机器和服务器上得到的。
就在最近,出于某种神秘的原因,我们的本地机器发生了如此微小的变化。尽管仍然设置为“英语(新西兰)”,日期分隔符已从/
更改为-
!在仍然显示“英语(新西兰)”和日期分隔符的/
的服务器上,没有发生相同的更改。
所以现在对于我的本地机器,对于dd/MM/yyyy
格式,我得到的是19-11-2008
而不是19/11/2008
。
这有点令人不安。
到目前为止,我能看到的唯一解决方法是转义斜杠,并将格式设置为dd\/MM\/yyyy
。这似乎是可行的,但似乎不是理想的解决方案。
有人能帮帮忙吗?
注意:这是针对intranet应用程序的,我并不关心真正的全球化。我只想修改日期格式,而不是让它在我身上发生变化。
发布于 2008-11-19 02:35:14
您可以更改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;
}
发布于 2009-05-08 00:47:46
在web.config中,根据the following documentation设置标签
<system.web>
<globalization culture="en-NZ" uiCulture="en-NZ"/>
</system.web>
发布于 2013-11-06 10:18:29
一个好的方法是配置Web.Config,日期格式出现在aspx的所有组件中
<system.web>
<globalization uiCulture="en" culture="en-NZ" />
</system.web>
https://stackoverflow.com/questions/300841
复制相似问题