Mendapatkan Tanggal atau Waktu hanya dari Objek DateTime


Jawaban:


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
Tidak mengira itu begitu jelas! :)
gideon

value.Date + ""mengembalikan date 12:00:00 AM. Gunakan value.Date.ToShortDateString()untuk menghindari ini.
hesed

39

Anda juga dapat menggunakan DateTime.Now.ToString("yyyy-MM-dd")untuk tanggal, dan DateTime.Now.ToString("hh:mm:ss")untuk waktu.


1
Panggilan yang bagus. Itulah yang saya dapatkan karena menjawab dengan tergesa-gesa. Marc Gravell berhasil.
Joshua Smith

5
Saya akan mengatakan bahwa Anda cukup sering mencari string sehingga jawaban ini memiliki nilai.
GWLlosa

22

Anda bisa menggunakan Instance.ToShortDateString () untuk tanggal,
dan Instance.ToShortTimeString () untuk waktu mendapatkan tanggal dan waktu dari instance yang sama.



-2

Terkadang Anda ingin membuat GridView Anda sesederhana:

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

Anda tidak ingin menentukan BoundField apa pun, Anda hanya ingin mengikat grid Anda ke DataReader. Kode berikut membantu saya memformat DateTime dalam situasi ini.

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");
}

Hasilnya ditampilkan di sini. Pemformatan DateTime


4
Anda memiliki beberapa keterampilan yang sakit bro
Ruchan
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.