1
SQL Server Management Studio將數據類型「Date」的值生成爲以下字符串: CAST(0x38320B00 AS Date)。我需要將它轉換成經典的.NET日期時間(我有在C#應用程序中的字符串)。我知道如果它是SQL Server DateTime,它將是十六進制數的兩倍,第一部分將指定從1.1.1900開始的天數,第二部分將指定從中午開始的1/300秒的數。什麼是SQL Server中十六進制日期格式的規範?
我認爲,分別在SQL Server日期數據類型這將只是DateTime的第一部分(時間部分省略),但事實並非如此。當我嘗試下面的代碼段時,我收到異常:
Int32 high = Int32.Parse("38320B00", NumberStyles.HexNumber);
DateTime start = new DateTime(1900, 1, 1);
start = start.AddDays(high);
那麼這個數字是什麼意思?