Fluent NHibernateでベーステーブルマッピングを変更せずに継承を定義/拡張する方法はありますか?たとえば、Castle.ActiveRecord(NHibernateに基づく)を使用すると、次のように継承を定義できます。
[ActiveRecord("entity"), JoinedBase]
public class Entity : ActiveRecordBase
{
[PrimaryKey]
public int Id { get; set; }
}
[ActiveRecord("entitycompany")]
public class CompanyEntity : Entity
{
[JoinedKey("comp_id")]
public int CompId { get; set; }
}
- 基本エンティティのマッピングを変更せずに、新しいサブクラスを追加または削除することができます。
- 呼び出す
Entity.FindAll()
と、すべてのエンティティ(継承されたエンティティも)が返されます。