应用程序在系统日期格式、显示格式或 T-SQL 语句中存在日期问题是很常见的。目前我正在开始新项目并寻找处理日期的标准解决方案。
有时客户可能希望在应用程序级别更改所有日期的显示格式。我想在不影响整个项目代码的情况下以最小的努力处理这些事情。
请建议我使用适用于所有系统日期格式的 .Net 框架 4.0 在 C# 中处理日期的最佳方法
有很多方法,但我会提到我更经常使用的 2 个。
使用 SqlCommand 对象并将您的日期参数作为 DateTime 传递给 db 中的日期时间字段。
使用标准 SQL 日期格式“yyyy-MM-dd HH:mm:ss.ttt”将日期作为字符串传递给 db 中的日期时间字段。
希望这可以帮助。
与 sql 中的日期相比,将日期从应用程序传递到 sql 天气时,始终首选通用日期格式;日期套装的通用格式并按照日期标准执行。
您可以使用通用日期格式“2013-08-31 10:04:44.000”或“20130831”。
您还可以创建扩展方法 (C# 3.0+) 并在整个应用程序中使用该方法。
您可以将 datetime 对象转换为ISO 8601格式并将其传递给 SQL Server。
您可以将日期时间转换为 ISO 8601,如下所示,还可以查看标准日期时间格式字符串:
myDateTime.ToString("s")
有关更多信息,请通过以下线程显示如何将其转换为 ISO 8601 格式:
给定一个 DateTime 对象,如何获取字符串格式的 ISO 8601 日期?
在数据库中永远不要将日期时间存储为字符串,而只存储日期时间,并且永远不要在数据库级别格式化日期时间。