検証アプリケーションブロックと.NET 4.0のコードコントラクト
-
20-09-2019 - |
質問
誰もが.NET 4.0でwtihコードコントラクトに沿ってエンタープライズライブラリVABを実装していますか?
もしそうなら、あなたはいくつかの洞察を共有することができますか?それがパフォーマンスに助けましたか?考慮すべき?
その他の要因解決
彼らは簡単に同じプロジェクトで使用することができるよう、
両方のフレームワークは異なるスコープを持っています。しかし、あなたはあなたのドメインエンティティにコードコントラクトを使用して予防する必要があります。これを行うと、すべての発信者は、彼らは(あなたがこれを行うとき、コンパイル時エラーが発生します)無効な値を設定しないことを確認する必要があります。しかし、検証アプリケーションブロックでは、あなたのエンティティは(一時的に)無効な状態を持つことが許されなければなりません。それ以外の場合はVABは、今までに無効なオブジェクトを検出することができません。
私はそれ以外の場合はそれを入れてみましょう、コードの契約は、プログラミングエラーではなく、ユーザーのエラーを防止するためのもの、それは、このための時間をサポートしてコンパイルされています。 VABは*プログラミングエラーがない、ユーザー・エラーを防止し、このためのランタイム・サポートを提供します。
*さて、VABはまた、プログラミングエラーのために使用することができた(そして実際に、私はこの方法でそれを自分自身を使用して行う)が、メインシナリオは、IMO、ユーザ入力されます。
所属していません StackOverflow