情况是这样的:换了台英文windows2003的64位的服务器,装了.net2.0,ii6,
把以前的程序迁过去后发现用DateTime.now取得的日期都成了"3/4/2008"的格式(需要2008-3-4格式),以前编程的时候没有做这种转换:DateTime.now.ToString("yyyy-MM-dd")。
查了一下控制面板-区域和语言-区域选项-自定义-日期,里面都是设成"-"分隔的。不知道是什么原因导致这种情况,怀疑是不是如果装framework的中文版就能解决这种情况呢?请大家指教。
目前的办法是,在每一页pageload中增加如下代码(如果有继承page类的类直接改这个类也行):
System.Globalization.CultureInfo culture = new System.Globalization.CultureInfo("zh-CN", true);
culture.DateTimeFormat.ShortDatePattern = "yyyy-MM-dd";
System.Threading.Thread.CurrentThread.CurrentCulture = culture;
culture.DateTimeFormat.ShortDatePattern = "yyyy-MM-dd";
System.Threading.Thread.CurrentThread.CurrentCulture = culture;
不知大家有没有这种情况,是怎么解决的?谢谢。