0

我在我的 winform 应用程序中使用 SQL Server 精简版作为后端。

我的一张表中有一个列时间戳。我存储的时间戳如下:

DateTime dt = System.DateTime.Now;
long timestamp = dt.Ticks;

它将表示当前日期和时间的长值存储到数据库中。

我想通过设置DataSource属性在DataGridView控件中显示表的数据。

当我使用 SQL 查询“select * from my-table”检索表数据并附加到 DataSource 时,它​​只是将时间戳显示为长值。

我的问题是:在 DataGridView 中显示之前,如何将时间戳转换回 dd-mm-yyyy 格式的 DateTime 值?

4

2 回答 2

0

怎么样

Datetime dt = new DateTime(longvaluefromdatabase);

将 DateTime 结构的新实例初始化为指定的刻度数

这个

于 2012-08-11T11:26:43.107 回答
0

如果你使用数据表,你可以这样做:

resultDataTable.Columns.Add(new DataColumn("DateTime", typeof(DateTime)));
foreach (DataRow r in dt.Rows)
{
    r["DateTime"] = new DateTime(Convert.ToInt32(r["Timestamp"]);
}
dt.Columns.Remove("Timestamp");

选中此项以将 sqlceresultset.resultview 转换为数据表:Convert SQLCEResultSet resultview to datatable

于 2012-08-11T12:03:58.983 回答