我正在使用NHibernate 2.1。我試圖在屬性公式中使用過濾器,但出現以下錯誤:NHibernate屬性公式篩選器錯誤
過濾器名稱爲「SiteFilter」的filter-def從未用於過濾類或集合。
這裏是我的映射文件:
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2" assembly="DataAccess" namespace="DataAccess.Catalog">
<class name="Model.Catalog.Category,Model" table="Catalog.Category">
<id name="ID" column="ID" type="Int32" unsaved-value="0">
<generator class="native" />
</id>
<property name="Name" column="Name" type="string" length="50" not-null="true" />
<property name="ProductCount" formula="(SELECT COUNT(*) from Catalog.Product WHERE Product.CategoryID = ID)" lazy="true" />
<property name="SiteProductCount" formula="(SELECT COUNT(*) from Catalog.Product WHERE Product.CategoryID = :SiteFilter.SiteID)" lazy="true" />
<many-to-one name="Image"
column="ImageID"
not-null="true"
class="Model.Catalog.Image,Model"
cascade="save-update" />
<bag name="Products" table="Catalog.Product" generic="true" inverse="true">
<key column="CategoryID" />
<one-to-many class="Model.Catalog.Product,Model"/>
</bag>
</class>
<filter-def name="SiteFilter">
<filter-param name="SiteID" type="Int32" />
</filter-def>
</hibernate-mapping>
我在做什麼錯?謝謝你的幫助!
嗯,謝謝你的留言。當從1.x變爲2.x時,它顯示出這種未公開的特徵。 – 2009-12-16 21:38:04