これが私のエラーです:
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)
システムのユーザーの1人がこのエラーを偶然見つけましたが、これは私にはまったく意味がありません。私が知っていること:
- TeacherテーブルはUserテーブルを参照します。
- どういうわけか、Teacherテーブルにはユーザーのテーブルの行を参照する行がありますが、その行はユーザーのテーブルに存在しません。
なぜこれが起こっているのか考えていますか?お知らせ下さい!
私のQnを言い換えます:
エラーの意味はわかっていますが、ユーザー行が見つからない原因がわからないようです。すべてCascade.ALLに配置しました。削除とは関係ないと思います。上記が発生する可能性のあるシナリオは何ですか?
編集2:
FNHを介したマッピングを参照してください:これに関する問題はありますか?
public void Override(AutoMapping<Teacher> mapping)
{
mapping.References(x => x.User).Cascade.All().Not.LazyLoad();
}
ありがとう!