Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Nhibernate 简单联接子类示例尝试更新基表的标识列_Nhibernate_Joined Subclass - Fatal编程技术网

Nhibernate 简单联接子类示例尝试更新基表的标识列

Nhibernate 简单联接子类示例尝试更新基表的标识列,nhibernate,joined-subclass,Nhibernate,Joined Subclass,我必须在概念中遗漏一些非常重要的东西才能得到这个 错误,任何帮助都将受到感谢 我明白了 ---->System.Data.SqlClient.SqlException:无法更新标识 列“ProductID” 当我运行这个 var tblEvent = session.Load<TblEvent>(17); tblEvent.Code+= " - test update"; using (var tran = session.BeginTr

我必须在概念中遗漏一些非常重要的东西才能得到这个 错误,任何帮助都将受到感谢

我明白了 ---->System.Data.SqlClient.SqlException:无法更新标识 列“ProductID”

当我运行这个

 var tblEvent = session.Load<TblEvent>(17);
           tblEvent.Code+= " - test update";
           using (var tran = session.BeginTransaction())
           {
               session.SaveOrUpdate(tblEvent);
               tran.Commit();
           }
var-tblEvent=session.Load(17);
tblEvent.Code+=“-测试更新”;
使用(var-tran=session.BeginTransaction())
{
会话。保存或更新(tblEvent);
trans.Commit();
}
加载工作正常,我可以检查所有属性,但更新失败

这是映射文件

<hibernate-mapping namespace="Booking.BLL" assembly="Booking.BLL" xmlns="urn:nhibernate-mapping-2.2" >
 <class name="TblProduct" table="tblProduct" schema="dbo">
   <id name="_productID" access="field" column="ProductID"    type="Int32" >
     <generator class="native"  />
   </id>
   <property name="Active" type="Boolean" not-null="true" />
   <property name="AllowBackOrder" type="Boolean" not-null="true" />
   <property name="BuyY" type="Int32" precision="10" />
   <property name="BuyYQty" type="Int32" precision="10" />
   <property name="CategoryID" type="Int32" precision="10" />
   <property name="Code" type="String" length="50" />
   <property name="ColourID" type="Int32" precision="10" />
   <property name="ColourNameOverride" type="String" length="250" />
   <property name="Cost" type="Decimal" precision="10" not-null="true" />
   <property name="CreatedBy" type="Int32" precision="10" />
   <property name="CreatedDate" type="DateTime" />
   <property name="CustomSort1" type="Int32" precision="10" />
   <property name="CustomSort2" type="Int32" precision="10" />
   <property name="CustomSort3" type="Int32" precision="10" />
   <property name="DefaultImageID" type="Int32" precision="10" />
   <property name="Depth" type="Decimal" precision="10" not-null="true" />
   <property name="DispatchCategoryID" type="Int32" precision="10" />
   <property name="DisplayIfNoStock" type="Boolean" not-null="true" />
   <property name="GetXFree" type="Int32" precision="10" />
   <property name="GetXPercentDiscount" type="Decimal" precision="6" />
   <property name="Height" type="Decimal" precision="10" not-null="true" />
   <property name="IsFavourite" type="Boolean" not-null="true" />
   <property name="IsFeatured" type="Boolean" not-null="true" />
   <property name="IsInSite" type="Int32" precision="10" />
   <property name="IsSpecial" type="Boolean" not-null="true" />
   <property name="Keywords" type="String" length="250" />
   <property name="LongDescription" length="2147483647" />
   <property name="LongDescription2" length="2147483647" />
   <property name="LongDescription3" length="2147483647" />
   <property name="ManufacturerID" type="Int32" precision="10" />
   <property name="Name" type="String" length="250" not-null="true" />
   <property name="NoStockMessage" type="String" length="250" />
   <property name="OrderRanking" type="Int32" precision="10" />
   <property name="ParentID" type="Int32" precision="10" />
   <property name="Price" type="Decimal" precision="10" not-null="true" />
   <property name="PriceMember" type="Decimal" precision="10" />
   <property name="PriceRRP" type="Decimal" precision="10" />
   <property name="PriceSpecial" type="Decimal" precision="10" />
   <property name="PromotionID" type="Int32" precision="10" />
   <property name="RefExt" type="String" length="250" />
   <property name="SellBundledOnly" type="Boolean" />
   <property name="Sex" type="Int32" precision="10" />
   <property name="ShortDescription" type="String" length="500" not-null="true" />
   <property name="Size" type="String" length="50" />
   <property name="SizeID" type="Int32" precision="10" />
   <property name="SizeNameOverride" type="String" length="250" />
   <property name="SizeUnit" type="String" length="10" />
   <property name="SpecialEnd" type="DateTime" />
   <property name="SpecialStart" type="DateTime" />
   <property name="Status" type="Boolean" not-null="true" />
   <property name="Stock" type="Int32" precision="10" not-null="true" />
   <property name="SupplierID" type="Int32" precision="10" />
   <property name="TaxExempt" type="Boolean" not-null="true" />
   <property name="UpdateBy" type="Int32" precision="10" />
   <property name="UpdateDate" type="DateTime" />
   <property name="WeightKG" type="Decimal" precision="10" not-null="true" />
   <property name="Width" type="Decimal" precision="10" not-null="true" />
   <many-to-one name="Parent" class="TblProduct" column="ProductID" not-null="true" />
   <bag name="TblProducts" table="tblProduct" inverse="true">
     <key column="ProductID" />
     <one-to-many class="TblProduct" />
   </bag>
       <joined-subclass name="TblEvent" table="tblEvent">
       <key column="EventID" />
               <property name="AttachmentFileURL" type="String" length="200" />
               <property name="GLAccountNo" type="String" length="20" />
               <property name="MultiDayEvent" type="Boolean" not-null="true" />
               <property name="PromotionActive" type="Boolean" not-null="true" />
               <property name="RequiresLogin" type="Boolean" not-null="true" />
               <property name="TopLevelCategoryID" type="Int32" precision="10" not-null="true" />
               <property name="TotalAllocation" type="Int32" precision="10" not-null="true" />
               <bag name="TblSessionTemplates" table="tblSessionTemplate" inverse="true">
                 <key column="EventID" />
                 <one-to-many class="TblSessionTemplate" />
               </bag>
               <bag name="TblSessions" table="tblSession" inverse="true">
                 <key column="EventID" />
                 <one-to-many class="TblSession" />
               </bag>
       </joined-subclass>    
 </class>
</hibernate-mapping>

确定结果是多对一关系指向ProductID而不是parentID。 db2hbm似乎无法处理自引用外键