そのため、MVC で .NET メンバーシップ システムを使用する場合、パスワード ポリシーは web.config ファイルで定義されます。たとえば、minPasswordLength は members->profiles で定義されます。
ビューを使用する場合、これは@Membership
コンポーネントを使用してアクセスできます
Passwords must be at least @Membership.MinRequiredPasswordLength characters long.
ただし、サンプル MVC アプリケーションのデフォルト モデルを見ると、次のように表示されます。
[Required]
[StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)]
[DataType(DataType.Password)]
[Display(Name = "New Password")]
public string NewPassword { get; set; }
私が興味を持っているのはMinimumLength = 6
、これはハードコードされているため、パスワードの長さを更新したい場合は、web.config を編集するだけでなく (Microsoft が提案するように)、への参照を検索する必要があることです。ソースでそれを変更し、あらゆる場所で変更します (おそらく、最良のプログラミング方法ではありません)。
属性で変数を使用する方法はありますか。これはおそらく実行時ではなくコンパイル時に発生するため、そうではないと思います。将来的にすべての参照を置き換える必要をなくすためのより良いパターンを知っている人がいない場合は?