结合2个dbExpressions

时间:2019-04-04 09:55:31

标签: c# entity-framework expression

是否可以将多个dbExpression组合成一个表达式?

我正在使用本指南创建一个软件删除拦截器,以便可以过滤掉模型中我的一个表中的已删除项目。 http://marisks.net/2016/02/27/entity-framework-soft-delete-and-automatic-created-modified-dates/

当前访客查询是这个

 var table = (EntityType)expression.Target.ElementType;
                if (table.Properties.All(p => p.Name != IsDeletedColumnName))
                {
                    return base.Visit(expression);
                }

                var binding = expression.Bind();

                return binding.Filter(
                    binding.VariableType.Variable(binding.VariableName).Property(IsDeletedColumnName).IsNull()

                    ); 

但是我想向过滤器添加另一个检查,因此它不仅检查已删除的列是否为空,还检查另一个列是否为空。

由于在线文档似乎很少,有人对dbExpressions有足够的经验来提供帮助吗?

1 个答案:

答案 0 :(得分:0)

啊,没关系,我在dbExpressions上发现了.And()和.Or()方法。我认为这些会起作用。