我有两个日期FromDate
和toDate
转换如下的日期并将其作为参数传递给存储过程:
这两个变量都是DateTime FromDate,DateTime toDate变量
初始值如{10/1/2013 12:00:00 AM}
我已使用以下代码将其转换为{10/1/2013 00:00:00}
sparamFromDate.Value = FromDate.ToString("yyyy-MM-dd HH:mm:ss");
sparamToDate.Value = toDate.ToString("yyyy-MM-dd HH:mm:ss");
这给了我FromDate的预期结果:2013-10-11 00:00:00.000
但是我需要以下面的格式表示如何在代码中转换它?
toDate:2013-10-11 23:59:59.000
答案 0 :(得分:5)
toDate.ToString("yyyy-MM-dd 23:59:59.000");
如果toDay只是日期或者有时间组件也没关系 - 输出将是相同的和你想要的。
答案 1 :(得分:2)
我相信您要求toDate包含该日期内的所有会议记录,无论日历时间的实际时间部分如何。
以下表达式应该达到这个结果:
toDate.Date.Add(new TimeSpan(0, 23, 59, 59, 999)).ToString("yyyy-MM-dd HH:mm:ss.nnn");
Wal的回答实际上更容易。
您还应该使用InvariantCulture来执行ToString()
操作,因为您可能会以“:”或“ - ”之外的其他内容作为日期和时间字段分隔符。这可能会混淆您的数据库引擎。
答案 2 :(得分:1)
您可以在一天结束时获取DateTime,然后使用以下命令获取ToString():
toDate.Date.AddDays(1).AddMilliseconds(-1)
答案 3 :(得分:0)
toDate.Value = toDate.ToString("yyyy-MM-dd HH:mm:ss.nnn");