Fluent NHibernate
.NETでドメインモデルというと、次期Entity Framework(V2ではなくV4)が本命なのかなと思うのですが、NHibernateも発展しつつあります。
上のブログは、ASP.NET MVCのチュートリアルアプリであるNerdDinnerをFluent NHibernateで実装しています。このPart1はモデル部で、Part2(マッピング)、Part3(インフラストラクチャ)と続くみたいなので、Part3まで読めば、もう少しイメージがつかめるかなぁという感じです。
ちなみにFluent NHibernateは、XMLでマッピングする代わりに、コードでマッピングします。コードはこんな感じ。
Id(x => x.Id)
.Column("PersonId")
.GeneratedBy.Assigned();
マッピングの詳細はこのWikiを参照できます。オートマッピングもあるので規約ベースで実装できそうです。C#らしく「x => x.Id」とかけるのでタイプセーフに書けるのが便利ですね。