NHibernate瞬态对象异常

时间:2011-07-19 21:03:16

标签: hibernate nhibernate mapping

我想在EmployeebyProject表中插入一个插入,当试图插入抛出瞬态对象异常时。

表EmployeebyProject:{ PK:EmployeeId PK:ProjectId ,DateBegin,DateEnd}

这是映射:

<composite-id>
  <key-many-to-one name="Project" column="ProjectId" class="Project" cascade="save"></key-many-to-one>
  <key-many-to-one name="Employee" column="EmployeeId" class="Employee"></key-many-to-one>
</composite-id>

<property name="DateBegin" type="DateTime"/>
<property name="DateEnd" type="DateTime"/>

enter code here

如何避免这个问题?

1 个答案:

答案 0 :(得分:1)

来自hibernate视角的对象可以处于几种状态 - 瞬态,附加,分离...... 瞬态意味着尚未保存到数据库的实体。 如果我有关系A-> B,你需要保存B以便保存A(因为hibernate需要知道将什么放入A的外键中)。

所以2个选项:

  1. 之前保存B.在您的案例中,项目,员工
  2. 放级联。在您的情况下,您在Employee上错过了级联