1

我在頁面的ViewModel中有一個DateTime屬性。我想知道是否有內置的方式來檢查用戶是否輸入了有效的日期。使用ViewModel中的DataAnnotations在ASP.NET MVC中進行日期驗證

這裏是我當前的代碼是什麼樣子和現在,它不會自動確保用戶輸入有效日期(也只需要驗證):

視圖模型屬性:

[Required] 
[DataType(DataType.Date)] 
public DateTime MyDate{ get; set; } 

剃刀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

你是什麼意思由_not自動確保用戶輸入一個有效的DATE_?什麼是無效的:格式還是超出範圍?你輸入什麼輸入,然後會發生什麼?你期望發生什麼? – Jasen

回答

4

如果使DateTime可空在您的視圖模型,這將作爲你希望:

[Required] 
[DataType(DataType.Date)] 
public DateTime? MyDate { get; set; } 
2
[Required] 
[DataType(DataType.Date)] 
public Nullable<System.DateTime> MyDate { get; set; } 

應該工作

+0

與@RJCuthbertson所說的僅僅是寫一個不同的方式相同 –

相關問題