namespaceに属する各Attributeクラスのメソッドを"[]"で囲んだ記法によって、POST時に必須等の属性チェックを行うことができる。※例えば、[Required]は上記namespaceのRequiredAttributeクラス(ValidationAttributeクラスを継承)に属している。"{0}は{1}文字以内で入力してください。}}個別の属性については説明を省くが、上記のような属性を付与した状態でPOSTすると、@Html.ValidationMessageFor()を記述した箇所に以下のようにエラーメッセージをレンダリングする。実際に出力されるエラーメッセージは各属性の()内にあるErrorMessageで指定している。"{0}は{1}文字以内で入力してください。"")]で指定したプロパティの表示名称{1~n}:各属性の第一引数~第n引数が表示される。エラーメッセージの表示位置について前節で@Html.ValidationMessageFor()に各プロパティの属性チェックのエラーメッセージがレンダリングされると書いたが、実際のViewファイルへの記述は以下のようになっている。</div>}他のHtmlHelper同様、@Html.ValidationMessageFor()の引数にプロパティを指定するだけだ。このような記述によって、このように任意の場所にエラーメッセージを表示させることができる。場合によっては画面上部や特定の場所にエラーメッセージをまとめて表示させたい場合もある。そのような場合には、以下のように@Html.ValidationSummary()を追加して、第一引数にfalseを指定すればよい。</div>}こうすることで、以下のように箇条書きでエラー一覧が表示されるようになる。ここではエラー項目が分かるように"*"をエラーメッセージの代わりに表示させている。ちなみに、@Html.ValidationSummary()の第二引数に箇条書きの上に表示させるメッセージを指定できる。"エラー一覧")として実行。Htmlタグに自動付与されるValidation関連クラスここまでで属性チェックによるエラーメッセージを任意の箇所に表示させることができたが、今のままだと以下のようにPOST前の状態でもエラーメッセージが表示されっぱなしになる。GET時やエラーがない場合は非表示にしたい。⇒@Html.ValidationSummary()やHtml.ValidationMessageFor()が自動で付与してくれるクラスを利用する。@Html.ValidationSummary()およびHtml.ValidationMessageFor()は、プロパティのエラーの有無によって自動的にHtmlタグへクラスを付与してくれる。付与されるクラスの一覧は以下。validation-summary-valid:エラーがない場合、@Html.ValidationSummary()の生成したdiv要素に付与。validation-summary-errors:エラーがある場合、@Html.ValidationSummary()の生成したdiv要素に付与。input-validation-error:エラーがある場合、エラーとなったプロパティを使用している要素に付与。field-validation-valid:エラーがない場合、Html.ValidationMessageFor()の生成したspan要素に付与。field-validation-error:エラーがある場合、Html.ValidationMessageFor()の生成したspsn要素に付与つまり、class="validation-summary-valid"の要素は非表示とし、class="validation-summary-errors"の要素は表示させればよいことになる。これらは基本的にSite.css内に記載する。参考サイトによると以前はSite.cssに以下のような記述がデフォルトで用意されていたようだが、現在は自分で記載する必用があるようだ。none;}この状態でビルドすると、当然以下のように必用な時のみ表示させることができる。