0

.NET Web MVC 4 アプリケーションで複数ステップのデータ検証を実装するためのベスト プラクティスはどれですか? ステップ1

<input type="email" name="email"/>

コントローラーで、RegExp を使用して電子メールの有効性を確認し、ステップ 2 にリダイレクトします。

ステップ2

<input type="hidden" name="email"/>
<input type="password" name="pwd"/>
<input type="password" name="confirmpwd"/>

コントローラーでパスワードの有効性を確認し、ユーザーを作成します

誰かが非表示の入力で電子メールを変更すると、無効な電子メールでアカウントを登録できます。セッションにメールを保存できますか?または、メールを双方向の暗号化で暗号化し、非表示としてフォームに渡す必要がありますか? メールを再検証しますか? また、データ数が多い場合は?ベストプラクティスはどれですか?

4

1 に答える 1

2

厳密には、ベスト プラクティスの観点から、非表示のフォーム フィールドを含む入力の使用に依存することはできません。メールをセッションに保存できますが、サーバーがクラッシュした場合、またはサーバーがファームにある場合に影響がありますか? メールをトランザクション DB に保存して、後で取得できるようにすることをお勧めします。

検証に関しては、ビュー モデルで電子メールの正規表現データ アノテーションを使用する必要があります。また、パスワード強度の最小要件がある場合も同様です。データ注釈を使用して、確認パスワードがパスワードと一致することを検証することもできます。最後に、コントローラーで Model.IsValid をチェックして、最良の結果を得ることができます。

于 2013-05-28T14:48:42.963 に答える