实体框架 - 对集合的逻辑删除

时间:2013-07-30 05:33:42

标签: entity-framework entity-framework-5

我很擅长使用Entity Framework为POCO提供优雅的解决方案,其中收集了逻辑删除的子项。

在存储库或DbSet中实现这一点很简单,但是当涉及控制类的各种基于ICollection的属性的填充时,我们是否可以防止实体框架检索到逻辑删除的项目?

例如,我的大多数实体都有一个DeleteStamp,它指示一个项目是否被逻辑删除。有没有办法告诉实体框架填充其集合,但忽略项目WHERE DeleteStamp IS NULL

这可以在nHibernate中完成,例如在声明<set />元素并指定where参数时。

1 个答案:

答案 0 :(得分:0)

我不这么认为。您必须构建Respository规则和ADD动态lambda规则 您可以在注意时轻松管理基本查询集。 但是在导航道具上我一直在编写附加内容。 :-( 而且一般来说这非常复杂。

例如,具有get的存储库接受谓词Func的表达式。然后你扩展它。表达式树管理。

我无法在新版本规格中找到条件导航道具。

ef6 specification