モデルまたはビューモデルで、MVC (MVVM) でビューモデルを使用する場合、検証はどこに存在する必要がありますか? (または両方、またはどちらでもない)?なぜ?特に、ASP.NET MVC の V2 が近日公開されることを考慮して、これを取り上げます。
複雑な/カスタム検証はどうですか?
モデルまたはビューモデルで、MVC (MVVM) でビューモデルを使用する場合、検証はどこに存在する必要がありますか? (または両方、またはどちらでもない)?なぜ?特に、ASP.NET MVC の V2 が近日公開されることを考慮して、これを取り上げます。
複雑な/カスタム検証はどうですか?
ビジネス固有の検証はモデルに含める必要があります。モデルおよび/またはビューモデルの両方で、Web サイト固有の検証を行うことができます。このようにして、ビジネス ロジック (モデル) を別のインターフェイス (Windows、Web フォームなど) の背後に移動でき、検証はそのまま維持されます。
すべてのレベルで検証する必要があることが多いと思います:)
私はしばらくの間、次のことを考えていました:
注:必要なメールアドレスは、所属する場所によって異なることが多いため、2と3の両方に含めました。
電子メールが有益な役割を果たすだけの場合、検証を緩和してビューモデルにプッシュすることができます。電子メールがアプリケーションの強力な要件である場合、それは間違いなくモデルの検証です。
4つ目は、私たちが理解しているように、実際には検証とは何の関係もありません。
しかし、それも適用する必要があります。したがって、その結果をユーザーに表示する必要があります。
基本的に、4種類の検証すべてが同じインフラストラクチャを使用できます。しかし、実装は異なります:)...
乾杯、
ドミトリ。
モデル。検証はビジネス層にある必要があります。ビューモデルは、ビューのセットアップを取得するためだけのものでなければなりません。