2009-06-18 9 views
4

新しいASP.NET 3.5 MVCアプリケーションを開始します。検証の要件は次のとおりです。asp.net MVCアプリケーションのクライアント側とサーバー側の検証

  • クライアントとサーバーの両方の検証が必要です。
  • 検証ルールは1か所にあります。
  • 「パスワード」のような一般的なシナリオ&「パスワードの確認」が処理されます。

オプション:

  • DataAnnotation(ONLYないサーバー側の検証)
  • EL 4.1検証アプリケーションブロック
  • xVal枠組み
  • Validation Library枠組み
  • (ONLYサーバー側の検証を行います)
  • Validator Toolkit Fランプワーク
  • その他

xValと '検証ライブラリ'は両方ともDataAnnotationとjQuery検証プラグインを使用できます。

フォームに「作成」に必須であるが「更新」に必須ではないフィールドがある場合、これらのフレームワークのどれがこのシナリオを処理できますか?

MVCクライアント&のサーバー検証にはどのような方法をお勧めしますか?

ありがとうございます。

答えて

4

私は他人に質問:)

FluentValidationは面白そうに答えることができます。彼らはのような流暢な構文を提供します。

public ActionResult Save(Customer customer) { 
    var validator = new CustomerValidator(); 
    var results = validator.Validate(customer); 
    results.AddToModelState(ModelState, "customer"); 
} 

public class CustomerValidator: AbstractValidator<Customer> { 
    public CustomerValidator() { 
     RuleFor(customer => customer.Surname).NotEmpty(); 
     RuleFor(customer => customer.Forename).NotEmpty().WithMessage("Missing first name"); 
    } 
} 

また、以下に示すように、あなたは、にModelStateに検証した結果を追加することができますASP.NET MVCでいくつかの小さな統合を、持っています

関連する問題