数か月後、EntLib Validation Application ブロック (VAB) は、コード、属性、および構成の検証をサポートする成熟したライブラリであると答えることができます。
ほとんどの場合、開発者は、最も簡単で簡潔な方法として、DataContract リクエストの DataMember プロパティの属性検証から始める必要があります。
検証ルールが頻繁に変更されることが予想される場合、またはアプリケーションの異なるインストールでは同じプロパティに対して異なるルールが必要になることが予想される場合 (たとえば、国によって郵便番号のルールが異なる場合)、構成を選択する必要があります。簡単ではなく、学習が必要ですが、柔軟性は利点です。EntLib 構成エディターは、簡単にするのに役立ちます。
属性や構成を使用して表現できない複雑なルールの場合にのみ、コードを記述する必要があります。同じルールを数回繰り返す場合は、カスタム バリデータと検証属性を作成することを検討してください。
Fluent 検証ライブラリは、あまり望ましくない方法であるコードでの検証の追加をサポートしています。ですから、Fluent 検証がなぜ人気があるのか、私にはわかりません。また、 Fluent 検証の作成者がEntLib VAB に精通していないことにも驚きました。
私の最初の質問は、WCF 操作の入力パラメーターに関するものでした。ただし、ベスト プラクティスでは、複数の RPC スタイルの単純なパラメーターではなく、単一の要求パラメーターをデータ コントラクトとして使用することをお勧めします。とにかく、VAB は WCF 操作の個々のパラメーターの属性を提供し、より簡潔なビューを提供します (たとえば、 http://www.codeproject.com/Articles/259327/Integrate-Validation-Block-with-WCFを参照してください) 。