11

新しい ASP.NET MVC プロジェクトにどの検証アプローチを採用するかを決定しようとしています。(そして、うわー、たくさんのオプションがあります!)

このプロジェクトは NHibernate を使用しているため、最初に検討したのは NHibernate Validator でした (NHibernate との緊密な統合のため)。ただし、私が見る限り、この緊密な統合にはいくつかの利点しかありません。

1) NHibernate によって生成された DB スキーマには、検証の詳細が含まれます (たとえば、列の長さは検証で許可される最大値に設定されます)。(ただし、スキーマを手動で生成するので、これは私にとってはあまり興味がありません。)

2) 検証仕様を満たさないデータを保存しようとすると、NHibernate は例外をスローします。(これは私にはかなり冗長に思えます。なぜなら、とにかく保存する前に、選択したメカニズムによってデータがすでに検証されているからです)

NHibernate Validator にさらにメリットがある場合は、お知らせください。

私が少し読んでいる他のライブラリには、次のものがあります。

  • MS データ注釈
  • キャッスルバリデーター
  • 他の何か?

また、xVal を使用して、同じ一連のルールからクライアント側の検証を提供することも考えています。しかし、ASP.NET MVC v2 には xVal (jquery との統合) に似たものがすぐに使えるようになると聞いています。この新たに組み込まれた機能によって、他のいくつかの機能が冗長になりますか?

ですから、私は基本的に、ここでどの方向に進むべきかについて人々のアドバイスを求めています. 特定のスキームを実装したくはありませんが、別のスキームが支配的な技術になったときにそれを取り除かなければなりません。

何がうまくいきましたか?どちらのオプションが有利だと思いますか/有利になると思いますか?

ありがとう!

4

4 に答える 4

10

私はFluentValidationをjQuery 検証プラグインと一緒に使用していますが、まだ処理できない状況を見つけることができません。

于 2009-10-15T19:44:39.663 に答える
5

私はxValが好きです。

それを使用すると、クライアントとサーバーの検証を非常に簡単に実装できます。また、使用したいエンティティの列 (プロパティ) 検証もサポートされています。

于 2009-10-12T11:03:34.117 に答える
1

バディ クラスJQuery クライアント検証によって実装されるDataAnnotations

MVC Preview 2を使用していることを確認してください

于 2009-10-15T19:42:18.107 に答える
1

このデリゲート アプローチに興味があるかもしれません。私は、xVal のアイデア (現在行っているソリューション) と、同じまたは異なるクラス構造の複数のプロパティにまたがる複雑な検証ケースに対応していないように見えるという事実が気に入らなかったためです。

于 2009-10-17T16:04:43.357 に答える