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.