Abrufen von Datum oder Uhrzeit nur von einem DateTime-Objekt


Antworten:


133
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
Habe nicht gedacht, dass es so offensichtlich ist! :)
Gideon

38

Sie können auch DateTime.Now.ToString("yyyy-MM-dd")für das Datum und DateTime.Now.ToString("hh:mm:ss")für die Uhrzeit verwenden.


1
Guter Anruf. Das bekomme ich, wenn ich in Eile antworte. Marc Gravell hat es geschafft.
Joshua Smith

5
Ich würde sagen, dass Sie oft genug nach einer Zeichenfolge suchen, damit diese Antwort einen Wert hat.
GWLlosa

22

Sie können Instance.ToShortDateString () für das Datum
und Instance.ToShortTimeString () für die Uhrzeit verwenden, um Datum und Uhrzeit von derselben Instanz abzurufen.



-2

Manchmal möchten Sie Ihre GridView so einfach wie:

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

Sie möchten kein BoundField angeben, sondern nur Ihr Raster an DataReader binden. Der folgende Code hat mir geholfen, DateTime in dieser Situation zu formatieren.

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

Die hier gezeigten Ergebnisse. DateTime-Formatierung


4
Sie haben einige kranke Fähigkeiten Bruder
Ruchan
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.