我有以下模型Activity与语言依赖属性Title.语言依赖性由两个附加实体Translation(标题是这种类型,多对一)和TranslationValue(一对多)定义.
如果我写下面的hql:
from Activity act join fetch act.Title join fetch act.Title.TranslationValuesSet
Run Code Online (Sandbox Code Playgroud)
这到目前为止工作正常.但是一旦我将act添加到select语句中,我就遇到了TranslationValuesSet的连接问题:
select act from Activity act join fetch act.Title join fetch act.Title.TranslationValuesSet
Run Code Online (Sandbox Code Playgroud)
NHibernate.QueryException: Query specified join fetching, but the owner of the fetched association was not present in the select list [FromElement{explicit,not a collection join,fetch join,fetch non-lazy properties,classAlias=,role=Translation.TranslationValuesSet,tableName=TranslationValue,tableAlias=translatio3_,origin=Translation translatio2_,colums={translatio2_.TranslationId ,className=TranslationValue}}] [select act from Activity act join fetch act.Title join fetch act.Title.TranslationValuesSet
我无法弄清楚为什么Hibernate不喜欢它!?
任何tipps的Thx!