這裏是我的錯誤:NHibernate.ObjectNotFoundException:與給定的標識符的行存在
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)
一個系統的用戶偶然發現收到此錯誤,這沒有任何意義對我來說完全是。我所知道的:
- 一個教師表REFERENCES一個用戶表。
- 某種程度上,Teacher表有一行引用用戶表中的一行,但該行不存在於用戶表中。
任何想法爲什麼會發生這種情況?請指教!
重組我QN:
我知道什麼是錯誤的意思,但是我似乎沒有搞清楚是什麼原因造成丟失的用戶行?我已將它全部放在Cascade.ALL上。我不認爲這與刪除有關。上述可能發生的情況是什麼?
編輯2:
請通過FNH參考映射:任何問題嗎?
public void Override(AutoMapping<Teacher> mapping)
{
mapping.References(x => x.User).Cascade.All().Not.LazyLoad();
}
謝謝!
錯誤消息似乎足夠清晰。你能詳細說明你已經做了什麼來解決這個問題或不清楚什麼嗎?用戶是否在表中? –
@OskarBerggren,輕微的改寫。 :) – RicL