什么是C#中SQL时间戳的等效类型

时间:2019-09-14 07:29:18

标签: c# sql sql-server type-conversion timestamp

在SQL中,我们有一个timestamp类型的recordversion列(类似0x00000000006EC935)。希望将其作为c#代码中的字符串。什么是等效类型?如何转换?

2 个答案:

答案 0 :(得分:1)

您可以将sql中的时间戳类型映射到.net中的Byte []。

您可以像这样将字符串rowVersion转换为byte [],反之亦然:

    // string rowVersion To Byte[]
    byte[] byt = System.Text.Encoding.UTF8.GetBytes(strOriginal);

    // Byte[] rowVersion to string

    strModified = Convert.ToBase64String(byt);

答案 1 :(得分:0)

没有时间戳,in SQL server is a row version and has nothing to do with time. The closest you get to it is a byte[8] array

问题是您需要生成一个唯一的号码。您可以创建一个增加并转换的threadave计数器,但是您可以这样做而不必费心将其转换为字节数组。

最好将其保留为字节[]。 the current framework & EF maintain it like this to track concurrency