管理日期时间问题

时间:2013-08-07 07:37:25

标签: c# tsql datetime

应用程序具有系统日期格式,显示格式或T-SQL语句中的日期问题是很常见的。目前我正在开始新项目并寻找处理日期的标准解决方案。

有时客户可能希望在应用程序级别更改所有日期的显示格式。我想以最小的努力处理这些事情,而不会打扰整个项目代码。

请使用适用于所有系统日期格式的.Net framework 4.0来建议我使用C#处理日期的最佳方法

3 个答案:

答案 0 :(得分:1)

有很多方法,但我会提到我经常使用的2个。

  1. 使用SqlCommand对象并将Date参数作为DateTime传递给db中的日期时间字段。

  2. 使用标准SQL日期格式“yyyy-MM-dd HH:mm:ss.ttt”将日期作为字符串传递给db中的日期时间字段。

  3. 希望这有帮助。

答案 1 :(得分:0)

在将日期从应用程序传递到sql天气时,通用日期格式将是首选,并且在sql中的日期之间进行比较;日期适用的通用格式,并按日期标准执行。

您可以使用通用日期格式“2013-08-31 10:04:44.000”或“20130831”。

您还可以创建扩展方法(C#3.0+)并在整个应用程序中使用该方法。

答案 2 :(得分:0)

您可以将日期时间对象转换为ISO 8601格式并将其传递给SQL Server。

您可以将日期时间转换为ISO 8601,如下所示,还可以查看Standard Datetime format string

myDateTime.ToString("s")

有关详细信息,请查看下面的线程,了解如何将其转换为ISO 8601格式:

Given a DateTime object, how do I get an ISO 8601 date in string format?

在数据库中永远不会将日期时间存储为字符串,而是only datetimenever format datetime at database level