NHibernate-具有父子关系的保存模型中的问题
保存包含多个子对象的父对象时遇到问题 模型类别如下:NHibernate-具有父子关系的保存模型中的问题,nhibernate,Nhibernate,保存包含多个子对象的父对象时遇到问题 模型类别如下: public class Driver { private IList<CitationEvent> _CitationEvents = new List<CitationEvent>(1); } public class CitationEvent { public virtual Driver Driver { get; set; } } 引证事件.hbm.XML中的XML映射 <bag na
public class Driver
{
private IList<CitationEvent> _CitationEvents = new List<CitationEvent>(1);
}
public class CitationEvent
{
public virtual Driver Driver { get; set; }
}
引证事件.hbm.XML中的XML映射
<bag name="_CitationEvents" access="field" cascade="all-delete-orphan" inverse="true">
<key column="DRIVER_ID" />
<one-to-many class="CitationEvent" />
</bag>
<many-to-one name="Driver" class="Driver" column="DRIVER_ID" cascade="none"/>
关于这个问题还有一个观察:
当我试图用空列表保存驱动程序时,它不会给我这个异常。这不是特定于NHibernate的错误。可能的原因是,您试图将某个类中的可空属性强制转换为不可空类型。当.NET Framework试图访问不具有值的可空类型的Value属性时,会引发此异常
ITransaction transaction = session.BeginTransaction(IsolationLevel.ReadCommitted);
try
{
session.Save(driver);
transaction.Commit();
}
catch (Exception ex)
{
transaction.Rollback();
}