ASP MVC DateTime Validierungsfehler
n asp.net MVC 5 habe ich ein Formular, in dem Daten von einem DTO-Objekt angezeigt werden:
public class FieldDTO
{
[DataType(DataType.DateTime)]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime StartFieldDate { get; set; }
[DataType(DataType.DateTime)]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime StopFieldDate { get; set; }
public String FieldName { get; set; }
[DataType(DataType.DateTime)]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime StartJob { get; set; }
[DataType(DataType.DateTime)]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime StopJob { get; set; }
}
n meiner Controller-Klasse habe ich:
public ActionResult Create()
{
var model = new FieldDTO();
model.StartFieldDate = DateTime.Now;
model.StopFieldDate = DateTime.Now;
model.StartJob = DateTime.Now;
model.StopJob = DateTime.Now;
...
...
}
n der Ansicht habe ich:
<div class="col-md-10">
@Html.EditorFor(model => model.StartFieldDate, new { htmlAttributes = new { @class = "form-control datepicker" } })
@Html.ValidationMessageFor(model => model.DataTurno, "", new { @class = "text-danger" })
</div>
Und ich habe den gleichen Rasierercode für den anderendatetime
controller. Ich habe das @ hinzugefüdatepicker
Klasse für jQuery UI DatePicker.
Wenn ich im Formular auf die Schaltfläche "Erstellen" klicke, ohne die Steuerelemente zu ändern, funktioniert alles. Wenn ich eines der letzten beiden @ ändedatetime
picker und dann auf "Erstellen" klicken, bekomme ich den Validierungsfehler:The field xxxx must be a date.
Ich weiß nicht, wo das Problem liegt, da alle Steuerelemente auf dieselbe Weise generiert werden.