我正在尝试将我的 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 并直接操作其属性(例如名称、访问权限),但是关于如何在 fluent 构建器之外执行操作的文档要少得多。例如,如何设置列?有“AddColumn(...)”,但它需要一个 ColumnMapping,这是我开始迷路的地方。