У меня есть экземпляр DateTime
, который имеет дату и время.
Как извлечь только дату или только время?
Получение даты или времени только из объекта DateTime
Ответ 1
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
Ответ 2
Вы также можете использовать DateTime.Now.ToString("yyyy-MM-dd")
для даты и DateTime.Now.ToString("hh:mm:ss")
для времени.
Ответ 3
Вы можете использовать Instance.ToShortDateString() для даты,
и Instance.ToShortTimeString(), чтобы получить дату и время из одного и того же экземпляра.
Ответ 4
var currentDateTime = dateTime.Now();
var date=currentDateTime.Date;
Ответ 5
Иногда вы хотите, чтобы ваш 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");
}
Результаты, показанные здесь.