プレゼンテーションモデル

最近良く利用するパターン。
ASP.NET2.0で双方向バインドできるので、プレゼンテーションモデルを作成して組み合わせるとコントロールのプロパティに設定・取得するコードが必要なくなりすっきりします。
プレゼンテーションモデル自体は、多くの場合(簡単なので)型指定されたDataSetを使います。特定条件で色や表示/非表示を変えたいときなどはColorやVisibleプロパティなどをバインドします。この際これまた2.0で導入されたPartialクラスでカスタムのプロパティを作成して利用します。
上手く作れば、コントロールとバインドするだけで、あとはプレゼンテーションモデルに対して処理するだけで済みます。

もちろん、プレゼンテーションモデルの単体テストが普通のクラスと同じようにできるのも大きなメリットであることはいうまでもありません。