这是我的错误:
NHibernate.ObjectNotFoundException: No row with the given identifier exists[Project.Core.Entities.User#(GUID)]
at Hibernate.Impl.SessionFactoryImpl.DefaultEntityNotFoundDelegate.HandleEntityNotFound(String entityName, Object id)
at NHibernate.Event.Default.DefaultLoadEventListener.Load(LoadEvent event, IEntityPersister persister, EntityKey keyToLoad, LoadType options)
系统的一位用户偶然遇到了这个错误,这对我来说完全没有意义。我所知道的:
- 教师表引用用户表。
- 不知何故,教师表有一行引用了用户表中的一行,但该行在用户表中不存在。
知道为什么会这样吗?请指教!
改写我的 Qn:
我知道错误是什么意思,但是我似乎不知道是什么导致了丢失的用户行?我已将其全部放在 Cascade.ALL 上。我认为这与删除无关。以上可能发生的情况有哪些?
编辑2:
请参考 FNH 的映射:这有什么问题吗?
public void Override(AutoMapping<Teacher> mapping)
{
mapping.References(x => x.User).Cascade.All().Not.LazyLoad();
}
谢谢!