0

在域模型中,有许多实体的Status枚举值为ActiveDeleted

我正在寻找有关如何处理的推荐方法的文档和建议:

  1. 获取具有Status枚举的实体集合时,排除Deleted默认设置为值的实体(可根据具体情况覆盖)

  2. 获取实体的子集合时,默认情况下会排除默认设置为值的实体Deleted

总而言之,我实际上希望保留与具有Status枚举属性的实体相关的所有数据,但要排除默认值为Deletedfor status 的那些数据。

任何指向正确方向的指针都非常感谢。

4

1 回答 1

1

您可以使用 nhibernate 中称为过滤器的功能。

例子:

  <class name="Post"  table="Posts">
     <id name="Id">
        <generator class="identity"/>
     <id>

    <property name="Title"/>
    <property name="Text"/>
    <property name="PostedAt"/>


    <filter name="NoDeleted" condition="Status <> 'Deleted'"/>
</class>

然后当你查询时:

 session.EnableFilter("NoDeleted")

更多信息: http: //ayende.com/blog/3993/nhibernate-filters

于 2012-01-17T14:59:19.557 回答