0

Dateプロパティを持つMVC4のプレイリストModelクラスがあり、ユーザーがそれを作成するときに、今日より前の日付を指定できないようにしたい(今日またはそれ以降)。

ここに私のプレイリストクラスの一部があります:

[DisplayFormat(DataFormatString = "{0:d}", ApplyFormatInEditMode = true)]
        [Required(ErrorMessage = "Incorrect date format.")]
        public DateTime Date { get; set; }

この「範囲」の検証を追加するにはどうすればよいですか? 現在、有効な日付であるかどうかを検証しているだけですが、2012 年 11 月 30 日は有効であり、昨日であってもエラーは発生しません。

ビューにRazorを使用しています。ありがとうございました。

4

1 に答える 1

1

Range 属性を使用して動的な値に対して検証することはできません。現在の日付または計算された日付に対して日付を検証する ValidationAttribute に基づいて、独自のバリデーターを作成できます。または、モデル クラス (EF によって上書きされないようにするバディ クラス) で IValidatableObject インターフェイスを使用して、必要なプロパティを検証することもできます。

于 2012-12-01T17:36:08.720 に答える