私が持っているViewModelの1つに、タイプIListのプロパティがあり、EmploymentViewModelにはいくつかのプロパティがあり、そのうちの2つはDateプロパティ「From」と「To」です
[Display(Name = "From", Description = "Enter your Employment Start Date")]
[Date(ErrorMessage = "Date selected is invalid"), DataType(DataType.Date)]
public DateTime? From { get; set; }
[Display(Name = "To", Description = "Enter your Employment End Date")]
[Date(ErrorMessage = "Date selected is invalid"), DataType(DataType.Date)]
public DateTime? To { get; set; }
私は DataAnnotationExtensions を使用しています。
インターフェイスでは、jQuery UI の datepicker を使用して、ユーザーが日付を選択できるようにしています。DataAnnotations が配置されているにもかかわらず、「To」フィールドと「From」フィールドに「data-val」属性が表示されません。
表示される日付を無効な日付に変更すると、jQuery の目立たない検証で、「選択した日付が無効です」というメッセージが表示されません。
更新 - 詳細情報
@Html.LabelFor(m => m.Employments[i].From, new { @class = "formLabel" })
@Html.TextBox(GetInputName(i, "From"), (@Model.Employments[i].From.HasValue ? @Model.Employments[i].From.Value.ToString("MM/dd/yyyy") : ""), new { @class = "textBox toDate dynHasDatepicker", placeholder = "mm/dd/yyyy" })
別のプロパティ「BirthDate」に使用される同じ View/ViewModel が完璧に機能します。
ここでの違いは 1 つだけです。メインの ViewModel には 2 つのプロパティが含まれています。
EmploymentViewModel には、From プロパティと To プロパティが含まれています。これは検証プロセスに影響しますか?
何か理由は?
ありがとう