você também pode usar yourDateObj.ToShortDateString();
Muhammad Kashif
-2
Às vezes você deseja ter seu GridView tão simples quanto:
<asp:GridView ID="grid" runat="server" />
Você não deseja especificar nenhum BoundField, apenas deseja vincular sua grade ao DataReader. O código a seguir me ajudou a formatar DateTime nesta situação.
protectedvoidPage_Load(object sender, EventArgs e)
{
grid.RowDataBound += grid_RowDataBound;
// Your DB access code here...// grid.DataSource = cmd.ExecuteReader(CommandBehavior.CloseConnection);// grid.DataBind();
}
voidgrid_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");
}
Respostas:
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
fonte
value.Date + ""
retorna odate 12:00:00 AM
. Usevalue.Date.ToShortDateString()
para evitar isso.Você também pode usar
DateTime.Now.ToString("yyyy-MM-dd")
para a data eDateTime.Now.ToString("hh:mm:ss")
para a hora.fonte
Você pode usar Instance.ToShortDateString () para a data
e Instance.ToShortTimeString () para obter a data e hora da mesma instância.
fonte
var currentDateTime = dateTime.Now(); var date=currentDateTime.Date;
fonte
yourDateObj.ToShortDateString();
Às vezes você deseja ter seu GridView tão simples quanto:
<asp:GridView ID="grid" runat="server" />
Você não deseja especificar nenhum BoundField, apenas deseja vincular sua grade ao DataReader. O código a seguir me ajudou a formatar DateTime nesta situação.
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"); }
Os resultados mostrados aqui.
fonte