处理DateTime.Now不经过ToString()转换的格式(带有AM、PM)问题
问题是这样的:
DateTime.Now不经过ToString()转换,网站部署到测试服务器(国内)得到的时间格式是:2018/8/17 16:26:09,而部署到国外服务器得到的时间格式是:17/8/2018 4:43:15 PM,由于国外服务器得到的时间格式后面带有AM、PM,导致SQL执行错误,插入或修改记录失败。网上搜索了很多都没有找到解决方法,问题困扰了好几天,后来终于搜到一个方法,终于问题解决了,现特地把解决的参考方法记录下,希望对遇到类似问题的朋友有所帮助。
我的解决方法:
1、修改注册表的时间格式:运行-regedit-/HKEY_USERS/.DEFAULT/Control Panel/International,然后:
(1)在右边的sShortDate右键,修改为数值数据为yyyy/M/d(原来是m/M/yyyy)
(2)原来sShortTime原来是h:mm tt,修改为H:mm
(3)修改sTimeFormat为H:mm:ss,原来可能是h:mm:ss tt。
时间带有AM、PM的原因就是因为时间格式有tt。
2、重启IIS
处理方法参考CSDN博友queenpong的原文:https://blog.csdn.net/queenpong/article/details/79399730
公司的项目,部分电脑发布到IIS之后,凡是往后台数据库传入时间(不经过ToString()转换)都是带有星期的,造成SQL执行错误,项目中大部分是这样使用的,不想通过修改程序去处理经查网上的修改方式都不起作用,解决方法如下:
一、修改控制面板区域和语言控制
在“控制面板”,在“区域和语言选项”中找到了“格式”设置,然后把短日期改成yyyy-M-D。
经测试无效。
二、修改注册表
/HKEY_USERS/.DEFAULT/Control Panel/International 修改右侧sDate值为 - (可改可不改) 修改右侧sShortDate值为 yyyy-M-d (就是删掉后面的 dddd) 最后重启IIS。
经测试无效。
三、修改所有注册表
方法同二,只不过需要查询注册表中所有sShortDate,将默认格式为yyyy/M/d dddd,修改为yyyy-MM-dd ,修改后不要忘记重启IIS,测试通过
处理DateTime.Now不经过ToString()转换的格式(带有AM、PM)问题的更多相关文章
- 无法确定条件表达式的类型,因为“<null>”和“System.DateTime”之间没有隐式转换----解决办法
例子:(报错了) public DateTime? time { get; set; } time = item.HospOutDate.HasValue ? DateTime.Parse(item. ...
- c# datetime与 timeStamp时间戳 互相转换
将时间格式转化为一个int类型 // ::26时间转完后为:1389675686数字 为什么使用时间戳? 关于Unix时间戳,大概是这个意思,从1970年0时0分0秒开始到现在的秒数.使用它来获得的是 ...
- 工作总结 无法确定条件表达式的类型,因为“<null>”和“System.DateTime”之间没有隐式转换 解决办法 object——Nullable<T> (可空类型)
可空值类型 备注 一种类型认为是可以为 null,如果它可以分配一个值,也可以分配null,这意味着类型具有无论如何没有值. 默认情况下,所有都引用类型,如String,是否可以为 null, ...
- java list转换json格式
/** * 处理返回值(转换json格式和补零) * * @param resultDto5List * @param dateList * @return */ private JSONObject ...
- SQLserver中用convert函数转换日期格式
SQLserver中用convert函数转换日期格式 2008-01-23 15:47 SQLserver中用convert函数转换日期格式2008-01-15 15:51SQLserver中用con ...
- 转换Json格式帮助类
using System; using System.Collections.Generic; using System.Text; using System.Reflection; using Sy ...
- 转换字符串格式,可用于sql in
/// <summary> /// 转换字符串格式,可用于sql in /// </summary> /// <param name="lst"> ...
- MVC扩展ModelBinder使类型为DateTime的Action参数可以接收日期格式的字符串
原文:MVC扩展ModelBinder使类型为DateTime的Action参数可以接收日期格式的字符串 如何让视图通过某种途径,把符合日期格式的字符串放到路由中,再传递给类型为DateTime的控制 ...
- SQLserver中用convert函数转换日期格式(1)
SQLserver中用convert函数转换日期格式2008-01-15 15:51SQLserver中用convert函数转换日期格式 SQL Server中文版的默认的日期字段datetime格式 ...
随机推荐
- tar: Cowardly refusing to create an empty archive 问题
在解压 .tar.gz文件的时候遇到了这个解压的问题. 原命令:tar -zcvf ···.tar.gz 提示:tar: Cowardly refusing to create an empty ar ...
- BZOJ 1853: [Scoi2010]幸运数字(容斥原理)
http://www.lydsy.com/JudgeOnline/problem.php?id=1853 题意: 在中国,很多人都把6和8视为是幸运数字!lxhgww也这样认为,于是他定义自己的“幸运 ...
- install flask
pip install flask -i http://pypi.douban.com/simple
- hdu 1163 九余数定理
Eddy's digital Roots Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Oth ...
- js的数组与对象关系
有的时候总犯糊涂,不理解对象和数组的关系,转载一篇文章,深刻记忆一下 http://hi.baidu.com/samdan/item/05179313d1ee4b9e99ce3371 比如有一个数组a ...
- 定义集合属性(WPF)
在wpf中,定义集合属性时,字段可以使用“ObservableCollection<T>”定义,以保证数据改变时的自动通知功能:属性可以使用“ICollection”定义,保证属性的灵活性 ...
- mysql安装不上怎么办 mysql安装失败原因和解决方法
困难1:MySQL 5.1 安装过程中报apply security setting错误 1.卸载MySQL. 2.删除目录 C:\Documents and Settings\All Users\A ...
- TCP报文格式和三次握手——三次握手三个tcp包(header+data),此外,TCP 报文段中的数据部分是可选的,在一个连接建立和一个连接终止时,双方交换的报文段仅有 TCP 首部。
from:https://blog.csdn.net/mary19920410/article/details/58030147 TCP报文是TCP层传输的数据单元,也叫报文段. 1.端口号:用来标识 ...
- jacoco生成覆盖率
要统计自动化的覆盖率,所以临时看了下jacoco,记录下过程.后续用的时候方便查看. 1.build.gradle中修改 apply plugin: 'jacoco' android { buildT ...
- C++设计模式之职责链模式
代码实现: // chainResbonsibility.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <stri ...