NHibernateで Nullable なフィールド

O/R マッピングツール NHibernate を使って Nullable なフィールドを持つエンティティを扱うためのメモ

NHibernateContrib

NHibernate 単体では DateTime などの型を持つフィールドには NULL が代入できず、いまいち使いずらい。そこで NHibernateContrib に含まれる Nullables.dll と Nullables.NHibernate.dll を使う。


マッピングファイル( *.hbm.xml)はこんな感じ

<property name="HogeDate"
    column="HOGE_DATE"
    type="Nullables.NHibernate.NullableDateTimeType, Nullables.NHibernate" />

マッピング対象クラスはこんな感じ

private Nullables.NullableDateTime _hogeDate;
public Nullables.NullableDateTime HogeDate {
    get { return _hogeDate; }
    set { _hogeDate= value; }
}