2

以下はコードです。私はそれを何もないところまで単純化しました。基本的に、セッションを開き、ムービーをロードし、ロックが機能することをテストしてから、アイテムを削除してから、再度ロックを試みると、例外がスローされます。誰もこれを見たことがありますか。誰かが助けてくれれば幸いです。カスタムインターセプターなどはありません。流暢な nhibernate マッピングと nhibernate 3.3.1.4000 を使用しています。

var セッション = SessionFactory.OpenSession();

var m = session.Get(movie.Id);

session.Lock(m, LockMode.None);

session.Evict(m);

session.Lock(m, LockMode.None);

問題を絞り込むために、簡単なクラス マッピングを作成しました。この問題は、プロパティにタグ付けされた遅延読み込みのバグのようです。遅延ロードされた電話番号がコメントアウトされている場合、ロックは正常に機能しますが、マッピングに含まれている場合はクラッシュします。

        //DynamicUpdate();
        //LazyLoad();
        Id(x => x.Id);
        Map(x => x.Name).Unique();
        Map(x => x.CleanName);
        Map(x => x.PhoneNumber).LazyLoad();
        HasMany(o => o.CountryList).Table("Country").Element("String").Cascade.AllDeleteOrphan().LazyLoad();
        //HasMany(x => x.AddressList).Cascade.AllDeleteOrphan().Inverse().LazyLoad();
        Version(x => x.EditDate);
4

0 に答える 0