Entity Framework-DateTime-format beim Bearbeiten Eintrag
Ich habe eine Timetable
Modell, das nur zwei Attribute, die im moment eine Id
und Date
. Es ist definiert als so:
public class Timetable
{
public int Id { get; set; }
[Required, Column(TypeName = "Date"), DisplayFormat(DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime Date { get; set; }
}
Ich dann eingerüstet, einige grundlegende CRUD-Funktionalität, und Dank der DisplayFormat
Anmerkung, es ist mir erlaubt das erstellen von Fahrplänen, mit Terminen in der dd/MM/yyyy
- format. Jedoch wenn ich Bearbeiten einen vorhandenen Zeitplan, die Anwendung ist Auffüllen der Date
Textfeld mit 01/01/2015 00:00:00
(siehe screenshot).
Gibt es eine Möglichkeit, um meine Anwendung verwenden Sie nur das Datum, sondern als Datum und Zeit?
- Wie sind Sie mit der Generierung der html -
@Html.EditorFor()
oderTextBoxFor()
? - Das Bearbeiten.cshtml-Seite ist mit
@Html.EditorFor
. - Dann das Attribut muss
DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyInEditMode=true)]
. Hinweis: die format-string - es generiert die Browser-Implementierung von einem datepicker und in der Kultur des Browsers. Beachten Sie auch seine nicht unterstützt in allen Browsern. - Ah, perfekt. Wenn Sie fügen Sie diese als Antwort werde ich es akzeptieren. Auch die named-parameter ist eigentlich
ApplyFormatInEditMode
, und es nicht schaffen, einedate
Feld für meine browser die native date-picker, die ich hatte, um dieDataType(DataType.Date)
- Anmerkung für die, die.
Du musst angemeldet sein, um einen Kommentar abzugeben.
In der Reihenfolge zu Rendern die Browser datepicker (
<input type="date" ..>
) mitEditorFor()
müssen Sie die folgenden Attribute auf dem Grundstück (Hinweis: das ISO-format das Datum angezeigt werden, in übereinstimmung mit dem browser Kultur)und in der Ansicht
Hinweis: die HTML5-date-input wird nicht unterstützt, bei älteren Browsern, und schon gar nicht im FireFox - siehe Vergleich hier