我有以下nHibernate Mapping和相应的类。映射工作正常。 我希望从'1'开始自动插入字段'RfpId'的值。
<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping namespace="IBeam.Core.Models" assembly="IBeam.Core" xmlns="urn:nhibernate-mapping-2.2">
<class name="Rfp" table="EST_MRFP" schema="test$tran">
<id name="Id" type="long">
<generator class="sequence" >
<param name="sequence">test$masters.global_sequence</param>
</generator>
</id>
<property name="RfpId" column="RfpId" type="String" not-null="true" />
<property name="Title" column="Title" type="String" not-null="true" />
</class>
</hibernate-mapping>
我该怎么做?现在我已经创建了一个oracle序列'RfpSequence'。在插入每个Rfp
类型的新记录之前,我通过运行查询从RfpSequence
获取NEXTVAL。有没有什么方法可以让nHibernate为我这样做,就像它对Id
字段一样。
答案 0 :(得分:1)
数据库是否负责增量?如果是这样,请尝试: -
<property name="RfpId" generated="always" update="false" insert="false" />
有一点需要注意,因为NH需要在插入后直接执行选择以更新值。