問題タブ [validation-application-bl]
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.
c# - C# モデルの検証 - 検証アプリケーション ブロックまたは DataAnnotations?
ドメイン モデル (ASP.NET MVC アプリ内) にバリデーター属性を追加したいのですが、検証アプリケーション ブロックと DataAnnotations の 2 つのフレームワークのどちらかを決定しようとしています。それらは同様のタスクを実行しているように見えるので、将来最もサポート/使用されるものを選択したいと思います. DataAnnotations は新しい (そして 3.5 SP1 の時点でフレームワークに組み込まれている) ようですが、Validation Application Block は時代遅れになると人々は考えていますか?
[これは主観的なものであるため、コミュニティ Wiki としてマークされています]
validation - MS検証ブロックまたはワークフロールールエンジン?
開発される大規模なアプリケーションについては、検証フレームワークを選択中です。ワークフロールールエンジンは厳密には検証フレームワークではありませんが、ワークフローファンデーションを使用せずに単独で使用できます。実行時に使用されるデータベースでルールを柔軟に指定できるようです。ただし、コードでルールを指定できないようです。
柔軟性の向上が要件の1つである場合(必ずしもビジネスアナリストがルールを編集する必要があるとは限りません)、2つのうちどちらを好みますか。その理由は何ですか。
asp.net - PropertyProxyValidatorを使用する必要があるのはなぜですか?ASP.NET
PropertyProxyValidatorがASP.NETUIと統合されていることを理解しています。ただし、クライアント側の検証はできません。UIにラベルを挿入し、サーバー側でエラーを入力するのとどう違うのでしょうか。
また、検証アプリケーションブロックを使用している場合、サーバー側とクライアント側でルールを複製したくない場合は、クライアント側の検証にどのようなアプローチを提案しますか?
c# - Unity フレームワークと検証アプリケーション ブロックを使用してメソッド パラメーターを検証する
質問
Validation Application BlockのValidation.Validate()
メソッドに、Unity が提供する の各パラメーターをIParameterCollection
私のカスタムとして表示させることは可能UserModel
ですか?
バックグラウンド:
Unity と Validation Application Block の両方を使用してメソッド パラメーターを検証しようとしています。
[RequiresValidation()]
メソッドを適切な検証属性で指定し、そのメソッドのパラメーターを指定できるようにしたいと考えています。
したがって、次のようなものです。
示されているように、検証ハンドラーへの呼び出しを開始するカスタム HandlerAttribute を作成しました。
ここで、検証ハンドラーはメソッドの各パラメーターの検証を試みます。
問題
Validation.Validate()
メソッドは常にtrueを返します。私の観察によると、検証ロジックは をmy ではなくparameter
として扱っているようです。object
UserModel
質問
Validation Application BlockのValidation.Validate()
メソッドに、Unity が提供する の各パラメーターをIParameterCollection
私のカスタムとして表示させることは可能UserModel
ですか?
wcf - wcf で生成されたクラスと検証アプリケーション ブロックの属性
私は検証アプリケーションブロックを初めて使用し、wcf で使用しようとしています...
検証アプリケーション ブロックを使用して、属性で定義された検証ルールを持つデータ オブジェクトを持つ wcf サービスがあります。
私のクライアント側 (WPF) には、サービス参照があります。サービス参照を更新すると、生成されたクラスに検証ルール属性が含まれていません。
サービスからルールを取得するにはどうすればよいですか? いくつかのステップが欠けていますか、それとも不可能ですか?
.net - .Netオブジェクトの検証
高性能プログラムに検証アプリケーションブロックを使用できますか?つまり、ストリームからオブジェクトを取得していて、来るデータを解析するときにそれらの値を検証する必要がある場合です。私が理解しているように、反射が関係しています...
オブジェクトの検証に使用できる代替ツールはありますか?
.net - 継承のあるエンタープライズ ライブラリ検証アプリケーション ブロック
エンタープライズ ライブラリ検証アプリケーション ブロックを使用しています。
抽象クラスA { public int fieldA; }
クラス B:A { }
タイプ B にバリデーターを追加します。フィールド fieldA を見つけることができず、構成に入力しても検証が成功しません。VAB は、抽象クラスと継承されたプロパティまたはフィールドを考慮しませんか?
wcf - wcfおよび検証アプリケーションブロックの単体テスト
wcfサービス用にセットアップした検証をテストしようとしています。それを行うための最良の方法は何ですか?
XmlStringValidatorは、私が作成したカスタムバリデーターです。理想的には、次のようなものが必要です。
ただし、この場合、検証は呼び出されません。
.net - Enterprise Library Validation アプリケーション ブロックと国際化
シナリオ
.NET/WPF デスクトップ アプリケーションは、英語とは異なる言語にローカライズ (MS 用語ではglobalized ) する必要があります。つまり、UI を完全に採用する必要があります (ラベル、アイコンなど)。
ただし、ログ ファイル エントリ、監査証跡エントリ、およびアプリケーションのその他の出力は、英語を話すサービス/サポート担当者がレビューできるように、英語のままにしておく必要があります。彼らはフランス語も中国語も話せません。
アプリケーションは、ローカリゼーションを実行するために RESX ファイルに依存しています。
Enterprise Library Validation Block は、オブジェクト モデルのビジネス ルールの検証に使用されます。
ここで、実際のビジネス ロジックを実行する前に、指定されたオブジェクト モデルの引数を検証するサービスがあるとします。状況によっては、無効なオブジェクト モデル引数を受け取りますが、ベスト エフォートで実行を続行します。ただし、無効なオブジェクト モデル データの提供は、監査証跡とログ ファイルに記録する必要があります。
検証ブロックを使用したサービスの例。
コードのコメントで述べたように、EnterpriseLibrary バリデーターで Validate() を呼び出した場合、検証メッセージは既にフランス語にローカライズされており、英語のログ ファイルなどに書き込む機会がありません。
アプリケーションの他の領域では、実際の文字列値を解決するために使用するカルチャが特定されるまで、リソース ID とパラメーターをカプセル化するメッセージ クラスを使用します。延期されたリソース解決と呼ぶことができます。
Enterprise Library Validation ブロックに同様のメカニズムを導入する方法はありますか? これまでのアイデア:
- CurrentCulture を一時的に切り替える (私はそれが気に入らず、問題の半分しか解決しません)
- Enterprise Library Validation Block にパッチを適用します (これも好きではありません)。
ご協力いただき、アイデアを共有していただきありがとうございます。