問題タブ [fluentvalidation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-mvc - 整数プロパティで NotEmpty を使用した流暢な検証
次のコードがあります。
StatusId は整数です。この場合、NotEmpty はどのように機能しますか? それは何を検証しますか?整数または文字列? 整数が空でないことをチェックするこの部分の単体テストはどのようになりますか?
これは、MVC 3 アプリケーションでドロップダウン リストを検証するために使用されます。検証はビューでうまく機能します。GreaterThanOrEqualTo の部分は、ステータスの一意の識別子が 1 未満になることはありません。これをトリガーして、オブジェクトを検証したいと考えています。このようにすると、NotEmpty も起動しないのはいつですか? どちらが最初に解雇されるかについて好みはありますか? StatusId が 0 の場合、どのルール セットが起動しますか? -1なら?ビジネス オブジェクトの ID をチェックするときに、ビューと GreaterThanOrEqualTo で NotEmpty を使用したいと考えています。助言がありますか?
c# - EntityFrameworkで複合型が使用されている場合にASP.NETMVC3検証エラーが発生しない
現在、ユーザーがコンテンツを投稿できるようにするフォームを作成しています。WMDエディターを使用したいので、Entity FrameworkContent
モデルには、 HTMLフィールドとWMDフィールドを保持するという名前の複合型があります。
フォームには、タイトル用のテキストボックスと、用のWMDエディターがありContent
、次のようにFluentValidationフレームワークを使用しました。
何も入力せずにこのフォームを送信すると、クライアント側の検証ではタイトルのみが無効として検出されます。タイトルに何かを入力すると、フォームが送信され(コンテンツが空であっても)、サーバー側でエラーがキャッチされ(コンテンツが空)、入力した情報がページに再読み込みされますが、エラーメッセージは表示されませんが表示されました。
EntityFrameworkモデルで作成した複合型がこの問題を引き起こしているようです。ContentHtml
以前はとのプロパティが別々でしたが、ContentWMD
正常に機能しました。
以前の場所に戻らなくても、これに対する回避策はありますか?
asp.net-mvc - 番号の問題に関する FluentValidation
ASP.NET MVC 3 アプリケーションで FluentValidation を使用しています。
ビューモデルに MaxNumberTeamMembers プロパティがあります。
次のルールセットが可能かどうかを知りたい:
- フロントエンドビューで、テキストボックスが空の場合、「MaxNumberTeamMembers が必要です」というメッセージが表示されるようにします
- 入力した数が 1 未満の場合、「MaxNumberTeamMembers は 1 以上である必要があります」というメッセージを表示します。
上記のルールセットはどのようになりますか?
私は次のものを持っていますが、0 を入力すると GreaterThan 部分では機能しません:
2011 年 2 月 14 日更新:
c# - List の ViewModel 検証
次のビューモデル定義があります
したがって、私のアプリケーションでは、アクセス要求に対して少なくとも 1 人が必要です。検証にはどのようなアプローチを使用できますか? この検証をコントローラーで行うのは簡単でありたくありません。唯一の選択肢はカスタム検証属性ですか?
編集:現在、この検証を FluentValidation で実行しています (素敵なライブラリ!)
asp.net-mvc-3 - FluentValidationの使用を開始する際の問題
FluentValidation2.0をMVC3プロジェクトで使用しようとしています。ここの指示に従って、プロジェクト内にFVをインストールしました。
これは私のバリデータークラスです:
これが私が属性を使おうとするところです:
ただし、属性は認識されていません。ビルドすると、次のエラーメッセージが表示されます。
「System.ComponentModel.DataAnnotations.Validator」は属性クラスではありません。
私は実際にこれを2つの異なる解決策で試しましたが、両方で同じ問題が発生しています。些細なことかもしれませんが、わかりません。
誰かが私が間違っていることを教えてもらえますか?
ありがとう。
c# - fluent.validateがasp.netmvcで例外をスローするのはなぜですか
フォームを投稿するときにデフォルトのasp.net-mvc検証をオーバーライドしたいので、fluent.validationを使用してみました
バリデータークラス(ProjectValidator)を作成しました
データ転送オブジェクトクラスに属性を設定します
そして私はこれをapplication_start();に入れます。
しかし、このオブジェクトを使用するフォームを投稿すると、次のエラーが発生します。
メソッドが見つかりません:'System.Collections.Generic.IEnumerable`1 FluentValidation.IValidatorDescriptor.GetValidatorsForMember(System.String)'。
助言がありますか?
asp.net-mvc - 流暢な検証を使用した属性ベースの検証は、asp.net-mvcでは機能しないようです
このチュートリアルでは、次のすべての手順に従いました。
バリデータークラスを作成しました
このバリデーターを特定するために、DTOに属性を設定します
しかし、フォームの投稿後、ModelStateエラーリストを確認すると、表示されるエラーはasp.net-mvcのデフォルトの検証から発生しています。
なぜ流暢に話せないのかについての提案。バリデーター?? GUIで見たものの画像を下に追加しました
コードでバリデーターを直接呼び出すと、問題なく機能します。
asp.net-mvc - クライアント側の検証のために ErrorMessage を渡す
複数の正規表現パターンを使用して (目立たないクライアント側の検証で) プロパティを検証する方法がないため (検証タイプは一意である必要があるため)、FluentValidation を拡張して、次のことができるようにすることにしました。
最後に理解する必要があるのは、via を使用して設定されたエラー メッセージを渡す方法WithMessage()
ですGetClientValidationRules()
。その結果、入力要素の "data-val-customregex[SOMEFANCYSTRINGHERETOMAKEITUNIQUE]" 属性になります。
FluentValidation のソースコードを見てきましたが、わかりませんでした。誰でもアイデアはありますか?
unit-testing - FakeItEasyとFluentValidationを使用したcommonlibnetからの偽のキャプチャ
commonlibrary(http://commonlibrarynet.codeplex.com/)のCaptchaクラスを使用しています。私のコードはすべて機能しますが、今は単体テストを作成しようとしています。
私の検証ルールは次のとおりです。
私のセットアップコードでは、次のことを試みました。
しかし、次のエラーメッセージが表示されます。
したがって、問題は、FakeItEasyを使用して静的メソッドを偽造する方法です。
TIA、
デビッド
asp.net-mvc - FluentValidation 使用時のクラスへの DataAnnotation の追加
FluentValidation フレームワークを使用して、MVC プロジェクトのモデルに検証と注釈を追加します。
モデルのクラス レベルにデータ注釈を追加する必要があります。つまり、モデルに DisplayColumn 属性を追加する必要があります。しかし、FluentValidation を使用している (そして、アプリケーションの ModelMetadataProvider が FluentValidation を使用するように設定されている) ため、モデル クラスに DisplayColumn 属性を設定しても、使用されません。しかし、FluentValidation を使用してその注釈を追加する方法が見つかりません。
どうすればそれを機能させることができるか、誰にもわかりませんか?
ありがとう