我的页面的ViewModel中有一个DateTime属性。我想知道是否有内置的检查用户输入有效日期的方法。
以下是我当前代码的样子,截至目前,它并不会自动确保用户输入有效日期(只需要验证):
ViewModel属性:
[Required]
[DataType(DataType.Date)]
public DateTime MyDate{ get; set; }
Razor MVC6观点:
<label asp-for="MyDate" class="control-label"></label>
<input asp-for="MyDate" class="form-control" />
<span asp-validation-for="MyDate" class="text-danger" />
答案 0 :(得分:5)
如果您在视图模型中使DateTime
为空,这将按预期运行:
[Required]
[DataType(DataType.Date)]
public DateTime? MyDate { get; set; }
答案 1 :(得分:2)
[Required]
[DataType(DataType.Date)]
public Nullable<System.DateTime> MyDate { get; set; }
应该有效