如何在FluentNHibernate中映射私有标识字段?

时间:2010-05-17 13:43:39

标签: nhibernate fluent-nhibernate fluent

我正在尝试将我的NHibernate映射文件转换为FluentNHibernate。但是,我已经坚持第一次尝试了。这是一个XML映射文件的片段:

<class name="Contact" table="tblXContacts">
  <id       name="_id"                column="ContactID" unsaved-value="0" access="field">
  <generator class="identity"/>
</id>

FluentNHibernate的默认流利语言希望强制我使用属性。虽然我公开了一个类型安全的ContactId属性以供在代码中使用,但我从来没有能够让NHibernate接受这个值类型作为Id,所以我的公共属性动态地构造了一个新的值类型。

我发现在我的FluentNHibernate ClassMap中,我可以直接访问IdMapping并操作其属性(例如Name,Access),但是关于如何在流利的构建器之外执行操作的文档要少得多。例如,如何设置列?有“AddColumn(...)”,但它想要一个ColumnMapping,这是我开始迷路的地方。

1 个答案:

答案 0 :(得分:2)

在fluentnhibernate wiki上有一些关于映射私有成员的文档:http://wiki.fluentnhibernate.org/Fluent_mapping_private_properties。这是关于私人属性,但可能会有所帮助。