예제 #1
0
            public AndSpec(LinqSpec <T> spec1, LinqSpec <T> spec2)
            {
                this.spec1 = spec1;
                this.spec2 = spec2;

                // combines the expressions without the need for Expression.Invoke which fails on EntityFramework
                this.expression = VaBank.Common.Data.Linq.ExpressionCombiner.And(spec1.Expression, spec2.Expression);
            }
예제 #2
0
 public bool Equals(LinqSpec <T> .NegateSpec <TArg> other)
 {
     return(this.spec.Equals(other.spec));
 }
예제 #3
0
 public NegateSpec(LinqSpec <TArg> spec)
 {
     this.spec       = spec;
     this.expression = System.Linq.Expressions.Expression.Lambda <Func <TArg, bool> >(
         System.Linq.Expressions.Expression.Not(spec.Expression.Body), spec.Expression.Parameters);
 }
예제 #4
0
 public OrSpec(LinqSpec <T> spec1, LinqSpec <T> spec2)
 {
     this.spec1      = spec1;
     this.spec2      = spec2;
     this.expression = VaBank.Common.Data.Linq.ExpressionCombiner.Or(spec1.Expression, spec2.Expression);
 }
예제 #5
0
 public bool Equals(LinqSpec <T> .AndSpec other)
 {
     return(this.spec1.Equals(other.spec1) &&
            this.spec2.Equals(other.spec2));
 }