防止'not-null属性引用null或transient值'

时间:2012-02-11 19:27:02

标签: nhibernate

我有映射

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="DatabaseAccess" namespace="DatabaseAccess.poco">
  <class name="Employee" table="emplyees" lazy="true">
    <id name="id">
      <generator class="increment"></generator>
    </id>

    <property name="first_name" not-null="true"></property>
    <property name="last_name" not-null="true"></property>
    <property name="login" not-null="true"></property>
    <property name="sid"></property> 

  </class>
</hibernate-mapping>

如果session.Save(object)不抛出异常,我该怎么办: not-null property references a null or transient value 无论如何我想在提交之前填充这些空值。

1 个答案:

答案 0 :(得分:1)

  

如果session.Save(object)不抛出异常,我可以做什么:not-null属性引用null或者瞬态值我想在提交之前填充这些空值。

  • 将映射更改为不可为空。
  • 在保存前填写这些空值。
  • 更新已保存的实体:

 session.Save(obj);
 obj.Foo = new foo();

//session.SaveOrUpdate(object) // required if it's a new session.