この質問の延長として、データベースから日付を取得してグリッドに表示しています。
次のコードがあります。
string date = "";
DateTime? dateSent;
if (row["DateSent"] != DBNull.Value)
dateSent = (DateTime)row["DateSent"];
else dateSent = null;
date = (dateSent.HasValue ? dateSent.Value.ToString("dd/MM/yyyy hh:mm:ss") : null);
このコード ブロックの最後にブレークポイントを追加すると、DateTime?
変数「dateSent」のタイムスタンプが 24 時間制であることがわかります (例: 14:50:34)。ただし、string
変数「日付」の値を確認すると、02:50:34 などの 12 時間形式になっています。
12 時間形式に変換するつもりはありません。2 つの質問があります。
- dateSent.Value.ToString("dd/MM/yyyy hh:mm:ss") が 12 時間制のタイムスタンプを返すのはなぜですか?
- これを回避して 24 時間制バージョンを使用するにはどうすればよいですか?