「Open棟梁 wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
ASP.NETのValidatorコントロールを使用した場合、クライアントサイドのJavaScript?を使用した”単項目”チェック処理が実装可能。
検証コントロールを利用することで、まさにプログラム・レスで検証処理を実現することができ、
しかも、その検証はクライアント/サーバ双方をカバーするため、きわめて堅牢な処理を実現できる。
冒頭やページ末尾などにまとめてエラー・メッセージを表示させたいという場合には、
個々の検証コントロールを末尾に配置するのではなく、ValidationSummary?コントロールを使用するのが一般的。
JavaScript?の”単項目”チェック処理は実装しないケースが多い。
Validatorコントロール(検証コントロール)では、エラー メッセージ表示方法の制限が多く、画面設計によってはValidatorコントロールが使用できなくなるので、
最近は、P層(wwwブラウザ)側でチェック処理を実装しないでP・B層(サーバ)側の(Validatorを使用しない)チェック処理に集約するプロジェクトが多い。
テストが失敗した場合は、Validating イベントの CancelEventArgs? の Cancel プロパティが true に設定されるようにします。
これにより、Validating イベントがキャンセルされ、コントロールにフォーカスが戻ります。
その結果、ユーザは有効なデータを入力するまでこのコントロールから移動できません。
必ずクライアントのチェックを抜けて電文が飛んで来るので、サーバーサイドは”関連”チェック処理のみ実装するケースが多い。
以下の実装が参考になる。
項目が入力されているか
数値か?
日付か?
半角文字か?
全角文字か?
片仮名か?
半角片仮名か?
平仮名か?
DB側の状態を使用したチェックなので2C/Sアーキテクチャの場合を除いてサーバ側でチェックする必要がある。