nhibernate拦截选择查询

时间:2010-05-14 14:53:01

标签: nhibernate interceptor select-query

我在看nhibernate拦截器。它似乎能够拦截保存,更新和删除查询,但无论如何我可以拦截一个选择查询。

我遇到的问题是在某些情况下我自动想要在执行的sql语句中添加一些额外的sql过滤器。

任何想法

由于 垫

3 个答案:

答案 0 :(得分:2)

拦截器框架只允许您拦截实体操作,如保存,更新和删除。查询本身不会被截获,只有实体操作(以及选择/查看不计算)。

考虑对一组附加到您的ICriteria的查询类使用某种继承,以满足您的目的。

答案 1 :(得分:0)

我认为你可以通过自定义的NHibernate持久化实现这一目标;但是,我很难找到你如何写一个的例子......

答案 2 :(得分:0)

您可以使用where代码中的class属性:

<class name="MyClass" where="deleted=0">
    ...
</class>