关于DataTime的问题 对比ToShortDateString()和ToString("yyyy-MM-dd")

今天在项目网站中出现了一个恼人的问题

 

本机测试环境为windows xp || iis 5.0 || vs20005 || SQLServer2000

 

服务器环境为:windows2003 || iis 6.0 || SQLServer 2000

 

因为用到的存储过程中有动态sql语句,有一个地方不得不将日期转化为字符串后对时间进行比较

 

所以遇到了下面这个问题:在本机测试正常,放到服务器上出现查询不到结果

 

后来调试了好多地方,都开始怀疑是否存储过程也有编码问题了

 

最后将转换之后的时间进行对比发现:

 

XP输出的时间为:
BeginAddTime:2009-01-01 0:00:00

EndAddTime:2009-06-30 16:05:03

 

 

2003输出的时间为:
BeginAddTime:2009-1-1 0:00:00

EndAddTime:2009-6-30 16:05:03

 

差就差在两者对不足十位的是否用0补全上面,这可吭死人了~~~

 

于是,在程序中对DataTime.Now进行了处理:

 

DataTime.Now.ToString("yyyy-MM-dd");

 

而默认的方法DataTime.Now.ToShortDateString()

在windows 2003环境下就会出现没有用0补全个位的情况。

今记于此,以备后用!!

你可能感兴趣的:(关于DataTime的问题 对比ToShortDateString()和ToString("yyyy-MM-dd"))