NHibernate がこの HQL を翻訳する理由:
select count(*) from TeacherResource as tr
inner join fetch tr.Product as pr
where pr.CatalogTitle like '%ame%'
この無効な SQL に変換します (where 句を含みますが、テーブル結合を省略しています):
select count(*) as col_0_0_
from TeacherResources teacherres0_
where product1_.CatalogTitle like '%ame%'
また、期待どおりに動作するカウントを実行するにはどうすればよいですか?
エンティティの関連部分は次のとおりです。
Public Class TeacherResource
Public Overridable Property TeacherResourceId As Guid
Public Overridable Property Product As BvCustomProduct
End Class
およびマッピング:
<class name="TeacherResource" table="TeacherResources">
<id name="TeacherResourceId">
<generator class="guid"/>
</id>
<many-to-one name="Product" column="ProductBvin"/>
</class>