DateTimeオブジェクトからのみ日付または時刻を取得する


回答:


134
var day = value.Date; // a DateTime that will just be whole days
var time = value.TimeOfDay; // a TimeSpan that is the duration into the day

1
それがそれほど明白だとは思わなかった!:)
ギデオン2012

value.Date + ""を返しますdate 12:00:00 AMvalue.Date.ToShortDateString()これを回避するために使用します。
ヘセド

39

DateTime.Now.ToString("yyyy-MM-dd")日付と時刻にも使用できDateTime.Now.ToString("hh:mm:ss")ます。


1
よろしくお願いします。それは私が急いで答えるために得るものです。マーク・グラヴェルはそれを釘付けにしました。
Joshua Smith

5
ただし、この回答に価値があるほど頻繁に文字列を探していると思います。
GWLlosa 2010年

22

あなたは使用することができますInstance.ToShortDateString()日付の、
およびInstance.ToShortTimeStringを() 同じインスタンスから日付と時刻を取得するための時間のために。



-2

GridViewを次のように単純にしたい場合があります。

  <asp:GridView ID="grid" runat="server" />

BoundFieldを指定する必要はなく、グリッドをDataReaderにバインドするだけです。次のコードは、この状況でDateTimeをフォーマットするのに役立ちました。

protected void Page_Load(object sender, EventArgs e)
{
  grid.RowDataBound += grid_RowDataBound;
  // Your DB access code here...
  // grid.DataSource = cmd.ExecuteReader(CommandBehavior.CloseConnection);
  // grid.DataBind();
}

void grid_RowDataBound(object sender, GridViewRowEventArgs e)
{
  if (e.Row.RowType != DataControlRowType.DataRow)
    return;
  var dt = (e.Row.DataItem as DbDataRecord).GetDateTime(4);
  e.Row.Cells[4].Text = dt.ToString("dd.MM.yyyy");
}

ここに示す結果。 日時フォーマット


4
あなたはいくつかの病気のスキルを持っています
Ruchan 2014年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.