NHibernate
NHibernateの主な機能は、.NETクラスとデータベースの表をマッピングすることである(同時に、CLRデータ型とSQLデータ型をマッピングする)。データクエリおよび検索ファシリティも提供する。SQLコマンドを生成するので、開発者は煩雑なデータハンドリングとオブジェクト変換を気にする必要がなくなり、同時に各種SQLデータベースに対して移植性の高いアプリケーションが開発でき、しかもそのための性能オーバーヘッドはわずかである。
NHibernateはPlain Old CLR Object (POCO) のための透過的永続性を提供する。永続性クラスに要求されることは、コンストラクタの引数がないことであり、publicであることが必須ではない(一部アプリケーションでは、Equals()とGetHashCode()メソッドにも注意が必要)。