ASP.NET MVC を読んでいると、ビジネス ルールがモデルに関連付けられていて、UI が一連のエラーを表示し、無効な入力に関連付けられたフォーム要素にフラグを立てるだけの検証の素晴らしい例に出くわしました。すべてのフォームに独自の検証を実行させるのではなく、このロジックを 1 か所に保持することは非常に理にかなっていると思います。
ASP.NET Web アプリケーション プロジェクト (Web フォーム) を使用して、この分離をエレガントな方法で実現することは可能ですか? 検証ルールをビジネス ロジック レイヤーに保持でき、検証を実行して一連のエラーを返すメソッドを使用できます。しかし、UI 側で問題のあるコントロールにフラグを付ける良い方法がわかりません。
MVC では、フォーム要素とモデルはプロパティ名によって暗黙的にリンクされます。ASP.NET の UI は、モデルの一意のプロパティ名を (ID/名前またはカスタム属性として) 参照する必要がありますか? コントロール名からプロパティ名への手動で生成されたマッピングに UI がアクセスできるようにする必要がありますか?