问题是这样的:

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)问题的更多相关文章

  1. 无法确定条件表达式的类型,因为“<null>”和“System.DateTime”之间没有隐式转换----解决办法

    例子:(报错了) public DateTime? time { get; set; } time = item.HospOutDate.HasValue ? DateTime.Parse(item. ...

  2. c# datetime与 timeStamp时间戳 互相转换

    将时间格式转化为一个int类型 // ::26时间转完后为:1389675686数字 为什么使用时间戳? 关于Unix时间戳,大概是这个意思,从1970年0时0分0秒开始到现在的秒数.使用它来获得的是 ...

  3. 工作总结 无法确定条件表达式的类型,因为“<null>”和“System.DateTime”之间没有隐式转换 解决办法 object——Nullable<T> (可空类型)

    可空值类型 备注     一种类型认为是可以为 null,如果它可以分配一个值,也可以分配null,这意味着类型具有无论如何没有值. 默认情况下,所有都引用类型,如String,是否可以为 null, ...

  4. java list转换json格式

    /** * 处理返回值(转换json格式和补零) * * @param resultDto5List * @param dateList * @return */ private JSONObject ...

  5. SQLserver中用convert函数转换日期格式

    SQLserver中用convert函数转换日期格式 2008-01-23 15:47 SQLserver中用convert函数转换日期格式2008-01-15 15:51SQLserver中用con ...

  6. 转换Json格式帮助类

    using System; using System.Collections.Generic; using System.Text; using System.Reflection; using Sy ...

  7. 转换字符串格式,可用于sql in

    /// <summary> /// 转换字符串格式,可用于sql in /// </summary> /// <param name="lst"> ...

  8. MVC扩展ModelBinder使类型为DateTime的Action参数可以接收日期格式的字符串

    原文:MVC扩展ModelBinder使类型为DateTime的Action参数可以接收日期格式的字符串 如何让视图通过某种途径,把符合日期格式的字符串放到路由中,再传递给类型为DateTime的控制 ...

  9. SQLserver中用convert函数转换日期格式(1)

    SQLserver中用convert函数转换日期格式2008-01-15 15:51SQLserver中用convert函数转换日期格式 SQL Server中文版的默认的日期字段datetime格式 ...

随机推荐

  1. div框选中状态,倒三角样式

    html代码: <html> <head> <style> #triangle-bottomright { width:0; height: 0; display: ...

  2. php-----utf8和gbk相互转换

    utf8转换为gbk <?php header("Content-type:text/html;charset=UTF-8"); echo $str= '你好,这里是utf8 ...

  3. torchnet package (1)

    torchnet package (1) torchnet torchnet torchnet是用于torch的代码复用和模块化编程的框架,主要包含四个类 Dataset 以不同的方式对数据进行预处理 ...

  4. Leetcode 64

    class Solution { public: int minPathSum(vector<vector<int>>& grid) { int n = grid.si ...

  5. Leetcode 63

    //一维dp还是比较难写的class Solution { public: int uniquePathsWithObstacles(vector<vector<int>>&a ...

  6. Linux下启动关闭weblogic

    1. 启动主控域(必须永远先启动主控域) 首先,weblogic的启动脚本和关闭脚本都在域目录的bin文件夹下,所以,先cd到该目录 cd /home/weblogic/Oracle/Middlewa ...

  7. IOS-网络(AFNetworking)

    一.AFNetWorking基本使用 // // ViewController.m // IOS_0112_AFNetWorking // // Created by ma c on 16/2/11. ...

  8. form表单post请求保护 隐藏秘钥

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. vue2 简单的留言板

    没有写样式,只是写个功能 <template> <div class="headers"> <div class="form"&g ...

  10. Visual Studio 后期生成事件命令行

    set "str=$(ConfigurationName)" if "%str%"=="Release" (xcopy /y/e $(Tar ...