nhibernate过滤器不工作(未知过滤器参数)?

时间:2009-11-19 10:03:09

标签: nhibernate

我有一个像这样的过滤器:

<filter name="partnerIdFilter" condition="partner_id IN (:partnerId)"/>

并且partnerId参数的定义如下:

<filter-def name="partnerIdFilter">    
    <filter-param name="partnerId" type="int[]"/>
</filter-def>

并启用过滤器:

currentSession.EnableFilter("partnerIdFilter").SetParameterList("partnerId", specification.GetFilterValues());

但是我得到了一个N​​Hibernate异常Undefined filter parameter [partnerId]

我该如何解决这个问题?同一映射文件中的另一个过滤器正常运行。

1 个答案:

答案 0 :(得分:2)

我知道这是一个老问题,但我自己也刚刚学会了答案。类型必须是基本类型或继承自IType,ICompositeUserType,IUserType,ILIfecycle,Enum或必须是Serializable。如果它不是那些,那么你会得到这个相当神秘的错误。