ASP.Net MVC 4 のビューでモデルとして使用されるクラス内に (プロパティ レベルで) データ ドメインのアイデアを実装する方法はありますか?
次のコードを検討してください。
public class LoginProfileModel {
[DisplayName("Login ID")]
[Required(ErrorMessage = "Login ID is required.")]
public string LogonID { get; set; }
[DisplayName("Password")]
[Required(ErrorMessage = "Password cannot be blank.")]
[StringLength(20, MinimumLength = 3)]
[DataType(DataType.Password)]
public string Password { get; set; }
}
ASP.Net MVC 4 の LoginProfileModel を次に示します。さまざまなメタデータ/データ注釈を使用して、このコードでクリーンなビューを作成できるようにします。
@model myWebSite.Areas.People.Models.LoginProfileModel
@using ( Html.BeginForm( "Index" , "Login" ) ) {
@Html.ValidationSummary()
@Html.EditorForModel()
<input type="submit" value="Login" />
}
私は「ログイン ID」と「パスワード」の考え方を複数のビューで使用しているため、複数のビュー モデルで使用しています。パスワードが使用する属性を定義したり、パスワード自体をすべてのデータ注釈とともに 1 つの場所に定義したりして、使用するたびに再指定するのではなく、必要に応じてすべての定義を再利用できるようにしたいと考えています。
[DisplayName("Password")]
[Required(ErrorMessage = "Password cannot be blank.")]
[StringLength(20, MinimumLength = 3)]
[DataType(DataType.Password)]
public string Password { get; set; }
それは何らかの方法で可能ですか?