EntityFrameworkPOCOクラスとFluentValidationフレームワークでASP.NETMVCを使用しています。これは正常に機能しており、検証は正常に行われています(DataAnnotationsを使用しているかのように)。クライアント側の検証も機能しています。そして、私はそれにかなり満足しています。
これは私が書いているテストアプリケーションであり、新しいテクノロジーを一緒に動作させることができるかどうか(そしてそれらを途中で学ぶことができるかどうか)を確認するために作成しています。これで、実際のモデルをビューに渡すのではなく、ViewModelsを使用して実験する準備が整いました。私のサービスでAutoMapperのようなものを使用して、ModelからViewModelへのマッピングを行ったり来たりすることを計画していますが、最初に質問があります。
これは私の検証にどのように影響しますか?検証クラス(FluentValidationを使用して記述)は、モデルではなくViewModelに対して記述する必要がありますか?それとも、両方の場所で発生する必要がありますか?DataAnnotations(およびFluentValidation)に関する大きな問題の1つは、「どこでも」機能する1つの場所で検証を行うことができるということでした。そして、それは(ほとんど)その約束を果たしますが、ViewModelsを使い始めたら、その能力を失い、検証を2か所に戻す必要がありませんか?
それとも私はそれについて間違っていると思っていますか?