ich folgendes Feld habe in meinem Viewmodel:Datetime mit ASP.NET MVC
[Display(Name = "Datum und Uhrzeit der Vorstellung")]
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd.MM.yyyy HH:mm}")]
public DateTime DateAndTimeOfPerformance { get; set; }
Und die folgende Art und Weise in einer Teilansicht anzuzeigen:
<div class="form-group">
@Html.LabelFor(model => model.DateAndTimeOfPerformance, new { @class = "control-label" })
<div class="input-group date datetimepicker">
@Html.TextBoxFor(model => model.DateAndTimeOfPerformance, "{0:dd.MM.yyyy HH:mm}", new { @class = "form-control", @Value = Model?.DateAndTimeOfPerformance.ToString("dd.MM.yyyy HH:mm") })
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
@Html.ValidationMessageFor(model => model.DateAndTimeOfPerformance, null, new { @class = "text-danger" })
</div>
Wie Sie sehen können, verwende ich Bootstrap des Datetimepicker:
$('.datetimepicker').datetimepicker({
format: "DD.MM.YYYY hh:mm"
});
Aber ich bekomme immer die Validierungsfehler:
Aus meinen Recherchen zu Stackoverflow habe ich gesehen, dass es mit DateTime schwierig sein kann, aber ich habe kein passendes Beispiel gefunden, um zu sehen, wie es funktioniert.
Gibt es eine Möglichkeit MVC Validierung und Bootstrap's Datetimepicker zu kombinieren?
Dank
Welchen Wert hat die Kultur Ihrer App und Ihre Kultur? Sie können sie in web.config festlegen. Wenn dies nicht festgelegt ist, verwendet der Standardwert en-EN und daher kann Ihr Wert nicht zu einem dateTime analysiert werden. –
Standardmäßig validiert "jQuery.validator" Daten basierend auf dem Format "MM/TT/JJJJ", sodass Sie den Validator neu konfigurieren müssen. Für einige Optionen siehe [diese Antwort] (http://stackoverflow.com/questions/27285458/jquery-ui-datepicker-and-mvc-view-model-type-datetime/27286969#27286969) –