以下のクラスモデル(C#を使用したMVC 3)を使用して従業員を登録しています。パスワード/パスワードの確認フィールドは、新規登録時に使用されます。既存の従業員を編集するときに、パスワードの更新/入力/パスワードの確認を再度行いたくありませんが、(パスワードとパスワードの確認に関する)検証が行われているため、従業員の残りの情報を更新できません。
public class EmployeeModel
{
....
....
[Required(ErrorMessage = "Password is must")]
[Display(Name = "Password")]
[MaxLength(20, ErrorMessage = "Password can be maximum 20 chars long")]
[StringLength(20, ErrorMessage = "Password can be maximum 20 chars long")]
[MinLength(5, ErrorMessage = "Not a valid password, must be atleast 5 chars long")]
public string Password { get; set; }
[Compare("Password", ErrorMessage = "Password and Confirm password do not match")]
public string ConfirmPassword { get; set; }
....
....
}
私の質問は次のとおりです。従業員を編集するための別のモデルクラスを作成する必要があります(この新しいモデルにはパスワード/パスワードの確認フィールドがありません)?しかし、この種の状況は他のモジュールでも発生する可能性があり、モジュールごとに2つのモデルクラスを使用することになりたくないため、問題があります。
または編集中にパスワード/パスワードの確認フィールドをロードする必要がありますが、ユーザーには非表示にする必要がありますか?上記の手順は意味がありますか?他にどのような方法が可能ですか?