SELECTステートメントの結果をGridviewに表示するC#Webフォームがあります。私は日付として格納するStart_Dateと呼ばれるSQLの列を持っています。 SQLでは、それは私が私のグリッドをバインドするときしかし、私はいつもSQLに日付のみが格納されるWebフォームの表示
10/31/2017 12:00:00 AM
私のSELECT文は、私もStart_Date
をキャストしようとしたこの
SELECT Start_Date FROM Table WHERE Start_Date > GETDATE()
のように見えます。この
2017-10-31
のように見えます日付として表示されますが、それでも時間は表示されます。 SQLカラムがそれを格納していない場合は、どこから来るのでしょうか?
私のバインドもやはり単純です。
DataTable dt = new DataTable();
SqlConnection con = new SqlConnection(str);
SqlCommand cmd = new SqlCommand(query, con);
cmd.CommandType = commandType;
SqlDataAdapter sda = new SqlDataAdapter(cmd);
sda.Fill(dt);
gvPending.DataSource = dt;
gvPending.DataBind();
[すべてのSQL Serverの日付の種類が.NETのDateTimeにマップされます](https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql-server-data-type-マッピング)。 DateTimeには時間コンポーネントがあります。表示する必要はありません。異なる形式で日付を表示するようにGridViewを変更するだけです。 – mason
「2017-10-31」<=>「2017-10-31 00:00:00」<=>「10/31/2017 12:00:00 AM」単にプレゼンテーション事項です。 – lad2025
ありがとうございます。バインドされたフィールドには、SQLに表示された内容が表示されます。それがC#のデフォルトを取ることを認識していませんでした。 – maltman