datetimeはSQL Serverの64ビットとして格納されているため、SQL Serverのdatetimeフィールドから読み取り、int64として格納したいと考えています。私はこれに似た何かをするだろうか?SQL Server datetimeをADO.NETのC#int64に変換するにはどうすればよいですか?
DateTime dt = sqlDataReader.GetDateTime(0);
byte[] bt = BitConverter.GetBytes(dt);
// unfortunately, GetBytes() does not take DateTime as an argument
long ldt = (Convert.ToInt64(bt[0]) << 56)
+ (Convert.ToInt64(bt[1]) << 48)
+ (Convert.ToInt64(bt[2]) << 40)
+ (Convert.ToInt64(bt[3]) << 32)
+ (Convert.ToInt64(bt[4]) << 24)
+ (Convert.ToInt64(bt[5]) << 16)
+ (Convert.ToInt64(bt[6]) << 8)
+ (Convert.ToInt64(bt[7]));
なぜあなたはそのようなことをしますか?どういう理由ですか? – Oded
多分私は誤解や誤解をしているかもしれませんが、[Int64](http://msdn.microsoft.com/en-us/library/system.int64.aspx)は64ビットと[datetime](http:// msdn .microsoft.com/ja-us/library/ms187819.aspx)は64ビットなので、ゲインは何ですか?プログラミングの単なる練習であれば、私はそれを続けます。 – billinkc