public AndExpression(Expression expression , IList<Expression> rightExpressions) { if (rightExpressions == null || !rightExpressions.Any()) throw new ArgumentException("And Expression Create Arg Error!", "rightExpressions"); Operands.Add(expression); Operands.AddRange(rightExpressions); ReturnType = typeof (bool); }
public override Expression.Expression SatisfiedBy() { Expression.Expression result = null; foreach (var innerSpecification in InnerSpecifications) { result = result == null ? innerSpecification.SatisfiedBy() : result.And(innerSpecification.SatisfiedBy()); } return(result); }
public MemberExpress(Expression parameter, string memberName, Type ofType = null) { if (ofType != null) ReturnType = ofType; else { ReturnType = typeof (object); } Operands.Add(parameter); MemberName = memberName; }
public Expression Join(Expression dest, Expression onCriteria) { return new JoinExpression(this, dest, onCriteria); }
/// <summary> /// 大于 /// </summary> /// <returns></returns> public Expression Equal(Expression right) { return new EqualExpression(this, right); }
/// <summary> /// 大于 /// </summary> /// <returns></returns> public Expression GT(Expression right) { return new GreaterThanExpression(this, right); }