希望在C#中的DateTime中使用24小时格式化时间

Raz*_*ato 1 c# datetime

我的日期和时间以24小时格式存储在数据库中.我所做的是使用存储过程来获取所需的日期和时间并插入数据表中.但是在数据表中它会自动转换为12小时格式.从数据表中获取数据后,可以将其转换为24小时模式,但必须将其转换为字符串.但问题是我需要使用数据来创建图表它只接受DateTime格式.所以我想要的是一些方法将12小时时间转换为24小时时间格式而不将其更改为字符串.请帮助.

Jon*_*eet 9

我的日期和时间以24小时格式存储在数据库中.

我希望它们实际上不是以任何文本格式存储,而是存储在DateTime字段或类似的东西中.不要将"我在运行SQL查询时看到的内容"与"存储在数据库中的内容"混淆.正如数字不存储为十进制数字序列一样,日期和时间不应存储为文本.

但在数据表中它会自动转换为12小时格式.

不,如果你已经做好了一切,它应该把所有东西存放在DataTable一个DateTime.在调试器中,您可能会看到12小时的字符串表示,但对象本身应该是a DateTime.

基本上,12/24小时问题只是真正问题的一个症状:不必要的字符串转换.跟踪那些(并删除它们),其余的应该照顾好自己.因此,如果ToString()您在从中提取值时正在调用DataTable,请停止这样做.相反,只是演员:

DateTime dateTime = (DateTime) row["foo"];
Run Code Online (Sandbox Code Playgroud)