在fluent-nhibernate中,您可以拦截select查询以基于子类执行其他过滤

时间:2011-03-09 02:34:35

标签: nhibernate fluent-nhibernate fluent

我在这个网站上搜索了各种各样的问题,他们接近回答了我正在寻找的东西,但是我无法把所有东西拼凑起来让它发挥作用。基本上我所拥有的是这些方面的东西:

class test: subclass
{
  int happyInt;
  //Other stuff goes here, doesn't really matter for this example.
}

class test2: subclass
{
  string happyString;
  //Other stuff goes here, doesn't really matter for this example.
}

class subclass
{
  int intIWantToFilterby;
}

我已经映射了所有内容,我可以毫无问题地将数据输入和输出数据库,我甚至有拦截器正在工作,但基本上我想要的是每次为test或test2执行select作为select的一部分我希望它检查intIWantToFilterby是否等于某个值。我意识到我可以手动执行此操作,但是我有大量的类都继承自子类,我不想在100次上编写完全相同的逻辑。到目前为止,我还没弄清楚如何做到这一点。也许我错过了一些明显的东西,但是从我在流利的网站和nhibernate的网站上搜索到这里我还没有找到解决方案。

1 个答案:

答案 0 :(得分:0)

创建一个继承子类的新类,并将所有通用逻辑放在那里。现在创建test和test2并继承你的其他通用逻辑类。