C# web IIS服务器 DateTime 带中文解决

C# Web应用在某些电脑IIS上部署运行,读取当前时间带有中文,比如2018-5-1 星期一 上午 12:00:00,虽然使用Format转换可以解决,但代码量较大难免遗漏,会引发问题,为了解决该问题在服务器上尝试使用如下办法:
(1)重置区域时间格式,不起作用

(2)在Regedit里如下设置,搜索所有的sDate,后面带dddd的去掉,tt 的去掉tt,

注意:tt不去掉的话会有上午,下午;通过该方法可行,但会有同一个机器上一个程序池可以,另一个程序池不行的情况。

 (3)使用如下代码,可行,一个一个页面设置,或者放到protected void Application_BeginRequest(Object sender, EventArgs e)也可以,不过感觉还是有点不安全。

System.Globalization.CultureInfo myCI = new System.Globalization.CultureInfo("zh-CN", true);
myCI.DateTimeFormat.LongDatePattern = "yyyy-MM-dd";
myCI.DateTimeFormat.LongTimePattern = "HH:mm:ss";
myCI.DateTimeFormat.ShortDatePattern = "yyyy-MM-dd";
myCI.DateTimeFormat.ShortTimePattern = "HH:mm:ss";
System.Threading.Thread.CurrentThread.CurrentCulture = myCI;

 (4)强制使用日期
 1、控制面板--区域和语言选项--把时间设置为24小时格式。 
 2、建立HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\OLEAUT\VarConversionLocaleSetting = 2 (DWORD) 
 3、重启IIS

但是在我电脑上依然不起作用

(5)终极大法,该方法彻底解决了问题
1、打开注册表,搜索所有的International
2、删除International目录,依次删除完毕
3、打开区域设置,重置,重启IIS,基本解决,但是依然会出现有的IIS 内存池还是中文问题。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值