我有一个与标签类具有多对多关系的入口类。我正在尝试恢复条目的历史副本。
我试过这样查询:
AuditReader reader = AuditReaderFactory.get(getEm());
var entryRevision = reader.createQuery()
.ForEntitiesAtRevision(typeof(IEntry), false, true)
.Add(new IdentifierEqAuditExpression(entryId, true))
.Add(AuditEntity.RevisionNumber().Eq(revisionNumber)))
.GetResultList().SingleOrDefault();
但是,在尝试访问Tags
属性 orentryRevision
时,出现错误:
NHibernate.LazyInitializationException : Initializing[Unavailable#] - 无法延迟初始化集合,没有会话或会话关闭
当我尝试访问标签时,我已确认会话仍处于打开状态。
我想通过Tag_Entry_AUD
直接查询表以获取可能曾经与此条目相关联的所有标签 ID 来解决此问题,但我不知道该怎么做?是否可以使用 HQL 查询来做到这一点?