次のような MVC モデル クラスがあります。
[ValidateNewRegistration]
public class NewRegistrationModel {
[System.ComponentModel.DisplayName("Profile Display Name")]
[Required(ErrorMessage = "Display Name must be specified.")]
[StringLength(50)]
public string DisplayName { get; set; }
[System.ComponentModel.DisplayName("Email Address")]
[Required(ErrorMessage = "Email address must be specified.")]
[RegularExpression("^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,4}$",
ErrorMessage = "The email address you specified is invalid.")]
[StringLength(100)]
public string EmailAddress1 { get; set; }
}
私の見解では、私はこれを持っています:
@Html.ValidationSummary()
@Html.EditorForModel()
メタデータを使用して属性をマークアップする方法は理解していますが、やりたいのは、2 つのフィールドを持つ独自のエディター テンプレートを実装することです...少なくとも 1/2 で使用される名と姓です。私のウェブサイトの数十の場所。
エラー メッセージを追加して Validation Summary に表示されるようにする方法を教えてください。
長期的に私が探しているのは、「[UIHint("--Editor Template--")]」をクラスに配置し、エディター テンプレートを十分に自己完結させて、フォームのエラー メッセージを発行する機能です。分野。[Required...] または [RegularExpression...] というクラスにメタデータを追加する必要がないようにします。私の最終目標は、次のようなクラスです。
[ValidateNewRegistration]
public class NewRegistrationModel {
[System.ComponentModel.DisplayName("Profile Display Name")]
[UIHint("DisplayName")]
public string DisplayName { get; set; }
[System.ComponentModel.DisplayName("Email Address")]
[UIHint("EmailAddress")]
public string EmailAddress1 { get; set; }
[System.ComponentModel.DisplayName("Email Address (confirm)")]
[UIHint("EmailAddress")]
public string EmailAddress2 { get; set; }
}