2016-09-14 8 views
1

私はいくつかのプロジェクトでAngularJSを使用しました(最近はMEANスタックプロジェクト)。私が特に気に入っていなかったプロジェクトの一部は、入力検証の処理でした。ASP.NET Web APIを使用したAngularJSの単純な入力検証

すぐに、AngularJS SPAでASP.NET Web APIと通信する別のプロジェクトを開始します。

私はいくつかの要件がある場合:

  • 同じ検証の必要性はAPI経由で適用される(必要なフィールド、数値範囲、日付範囲など)を通じて簡単な入力値の検証AngularJSクライアント
  • サードパーティのクライアントは、AngularJSクライアントが持っているものと同じ入力検証ルールを、それらを複製する必要なしに(試行しなくても)持つ必要があります。

入力検証ロジックを複製せずに、これをどのように解決していますか?

これは、Web APIの土地に1回、AngularJSの土地に1回、この検証ロジックを2回書き込むのが悪いと感じています。real私はこれを行う方法についていくつかのアイデアを持っていますが、私はいくつかの提案を得たいと思っています。

ありがとうございました。

答えて

2

jqueryを目立たせずにFluent Validationを探していると思います。ここにWeb Apiでこれを使用している投稿があります:https://brettedotnet.wordpress.com/2013/05/01/asp-net-web-api-validation-a-one-more-better-approach。基本的にHTMLの属性としてルールの一部をレンダリングします。いくつかのバリデーションのためにajaxポストが必要です(これは主にバックエンドで処理される条件付きバリデーションの一部に当てはまると思います)。しかし、クライアント側で再書き込みすることを避けることが目的ならば、そのトリックを行うかもしれません。

また、.NETの流暢な検証ライブラリをプラグインすることもできます。https://github.com/JeremySkinner/FluentValidation

関連する問題