如何使用LINQ将SQL中的时间戳数据类型值转换为C#中的Datetime格式?
我在数据库中使用LINQ和带有时间戳数据类型的Tstamp fileld。现在,我想使用LINQ查询从SQL中获取数据,它在System.data.LINQ.Binary数据类型中返回Tstamp数据字段值。现在我想将此二进制数据类型值转换为Datetime格式,但如何转换?如何使用LINQ将SQL中的时间戳数据类型值转换为C#中的Datetime格式?,c#,asp.net,sql,linq,C#,Asp.net,Sql,Linq,我在数据库中使用LINQ和带有时间戳数据类型的Tstamp fileld。现在,我想使用LINQ查询从SQL中获取数据,它在System.data.LINQ.Binary数据类型中返回Tstamp数据字段值。现在我想将此二进制数据类型值转换为Datetime格式,但如何转换?Datetime!=时间戳 SQL时间戳是一个单调递增的数字,用二进制表示。不是时间。与时间无关,只是它们都会向前滚动。这就是为什么时间戳(作为关键字)现在被弃用(令人困惑),并被替换为 您无法从时间戳获取时间。如果需要时间
Datetime
!=<代码>时间戳
SQL时间戳是一个单调递增的数字,用二进制表示。不是时间。与时间无关,只是它们都会向前滚动。这就是为什么时间戳(作为关键字)现在被弃用(令人困惑),并被替换为
您无法从时间戳
获取时间。如果需要时间,请将时间存储为datetime
SQL时间戳实际上不是日期时间数据类型。它是一种自动生成的二进制数据类型,用于对行进行版本控制。因此,无法将其转换为C#中的日期时间值
有关更多信息,请参阅。那么,时间戳数据类型在SQL中的用途以及我们为什么使用它?timestamp
(和rowversion
,它们是同义词)用于执行乐观并发和更改检测,因为您可以通过单个字段轻松检查是否有任何更改。这是因为对该记录的任何更改都会自动将时间戳
/行版本
更改为一个新的(更高的)数字。然后,我可以在中使用to timestamp('gps_timestamp','YYYY-MM-DD HH24:MI:SS.FF')将日期转换为时间戳吗sql@user285oo6“时间戳”是指日期时间吗?或者您是指行版本
?两者都被称为“时间戳”,但它们是非常不同的东西。“时间戳”是什么意思?datetime精确到纳秒的时间戳如果我们想在aspx页面上显示时间戳值,那么如何显示该值???@Gaurav Agrawal-时间戳数据类型通常不包含对显示有价值的数据,因为它通常只是自动生成的二进制(有些随机)数据。如果需要存储日期数据类型,请在SQL中使用datetime数据类型。但是,如果必须显示此数据,则需要使用convert.ToBase64String()之类的方法将数据转换为字符串