C# 为什么在执行同一查询时,数据库和Datatable中的Datetime格式不同

C# 为什么在执行同一查询时,数据库和Datatable中的Datetime格式不同,c#,sql,database,datetime,datatable,C#,Sql,Database,Datetime,Datatable,请帮帮忙 在数据库中执行查询时,它显示如下 当将同一查询复制到DataTable中时,DateTime列的形式正在改变 数据库将在ui中显示数据。根据指定的文化和区域设置 另一方面,Dot net Datatable将使用线程的currentUICulture属性显示日期格式 因此,您有以下选择: 1) 从表/视图中选择时,使用Convert从SQL server获取格式 2) 在Datatable中添加一个新列,并使用DateTime.ToString(“format”)方法对其进行格式化并

请帮帮忙

在数据库中执行查询时,它显示如下

当将同一查询复制到DataTable中时,DateTime列的形式正在改变


数据库将在ui中显示数据。根据指定的文化和区域设置 另一方面,Dot net Datatable将使用线程的currentUICulture属性显示日期格式

因此,您有以下选择:

1) 从表/视图中选择时,使用
Convert
从SQL server获取格式


2) 在Datatable中添加一个新列,并使用
DateTime.ToString(“format”)
方法对其进行格式化并填充。

您的数据库以标准规范格式显示,并且您的Datatable通过线程的区域性设置显示,除非您指定了不同的格式

别担心。应该这样做。如果需要特定格式,请仅在查看datatable时更改它,然后使用“ToString()”方法之一显示日期和时间。不要使用表和查询


Datetime没有格式。只有datetime的字符串表示形式具有格式。@ZoharPeled Ok,那么如何将确切的datetime字符串从数据库复制到datatable。请帮忙。你说“抄送”是什么意思?只要将数据类型保留在
datetime
中,它的字符串表示就不重要了。如果你想以某种格式显示它,应该不会太难。两者都以没有任何格式的二进制表示形式存储该日期(不必混淆哪部分是“日”,哪部分是“月”)。当您显示该值时,它将以特定的方式格式化,以从内部二进制形式转换为字符串。@HansKesting u是对的。不知何故,我的思想传达了另一种东西。我修改了答案。。