1

我在提交翻译时遇到了一些错误。错误如下

对象引用未保存的瞬态实例 - 在刷新之前保存瞬态实例,或将属性的级联操作设置为使其自动保存的内容。

我为 TBASubType 创建了一个 .hbm.xml 文件

<?xml version="1.0" encoding="utf-8"?>
<hibernate-mapping namespace="M3.Entities" assembly="M3.Entities" xmlns="urn:nhibernate-mapping-2.2">
  <class name="TBASubType" table="tBASubType" schema="dbo">
    <id name="FSubTypeID" type="Guid">
      <generator class="assigned" />
    </id> <version name="FTimestamp" generated="always" unsaved-value="null" type="BinaryBlob">   <column name="FTimestamp" not-null="true" sql-type="timestamp"/>    </version>
    <property name="FType" type="Int32" precision="10" not-null="true" />
    <property name="FName" type="String" length="50" not-null="true" />
    <property name="FActive" type="Boolean" not-null="true" />

    <many-to-one name="TSCEnterprise" class="TSCEnterprise" column="fEnterpriseID" not-null="true" />
    <set name="TBADepositMasters" table="tBADepositMaster" inverse="true" cascade="all">
      <key column="fSubTypeID" />
      <one-to-many class="TBADepositMaster" />
    </set>
  </class>
</hibernate-mapping>

我该如何解决这个错误?

4

1 回答 1

2

我认为您正在使用 hbm.xml 文件来维护表之间的关系。如果您使用“多对一”关系,则意味着您将父子关系与表相关联。您应该使用 insert="false" update="false",如下所示:

<many-to-one
      name="TSCEnterprise" class="TSCEnterprise"
      column="fEnterpriseID" not-null="true"
      insert="false" update="false" />
于 2013-08-16T09:48:57.777 回答