Open棟梁 wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

実装箇所

Web

ASP.NETのValidatorコントロールを使用した場合、クライアントサイドのJavaScript?を使用した”単項目”チェック処理が実装可能。

  • @IT:解説:ASP.NETで学ぶVisual Studio .NETの魅力
    第2回 Visual Studio.NETでプログラム・レス開発を学ぶ(前半)

JavaScript?

JavaScript?の”単項目”チェック処理は実装しないケースが多い。

  • 理由
    • チェック部品の仕様がまちまちなので、自分で作りたくないが、適合する軽量なライブラリがない。
    • クライアント側バリデート機能との兼ね合いで、サーバ側のバリデート機能で、背景赤表示などを実装すると、クライアント側バリデート機能との表示に関する整合性が取れなくなる

サーバー側

Validatorコントロール(検証コントロール)では、エラー メッセージ表示方法の制限が多く、画面設計によってはValidatorコントロールが使用できなくなるので、
最近は、P層(wwwブラウザ)側でチェック処理を実装しないでP・B層(サーバ)側の(Validatorを使用しない)チェック処理に集約するプロジェクトが多い。

リッチクライアント

クライアント側

  • Windows Forms
    Control.Validatingイベントで”単項目”チェック処理をする。focus移動の制御はしないほうが無難。
  • Windowsフォーム上のコントロール データの検証
    http://msdn.microsoft.com/ja-jp/library/44sk2xyx.aspx

    テストが失敗した場合は、Validating イベントの CancelEventArgs? の Cancel プロパティが true に設定されるようにします。
    これにより、Validating イベントがキャンセルされ、コントロールにフォーカスが戻ります。
    その結果、ユーザは有効なデータを入力するまでこのコントロールから移動できません。

サーバー側

必ずクライアントのチェックを抜けて電文が飛んで来るので、サーバーサイドは”関連”チェック処理のみ実装するケースが多い。

”単項目”チェック処理

以下の実装が参考になる。

必須入力

項目が入力されているか

数値

数値か?

日付

日付か?

  • DateTime?.TryParse?()で確認可能。

文字

半角文字

半角文字か?

全角文字

全角文字か?

片仮名

片仮名か?

半角片仮名

半角片仮名か?

平仮名

平仮名か?

参考

正規表現チェック

禁則文字チェック

”関連”チェック処理

DB側の状態を使用したチェックなので2C/Sアーキテクチャの場合を除いてサーバ側でチェックする必要がある。


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-06-13 (水) 15:10:00 (182d)