public override void ReplaceWith(SqlExpression expression) { ArgumentValidator.EnsureArgumentNotNull(expression, "expression"); ArgumentValidator.EnsureArgumentIs <SqlLike>(expression, "expression"); SqlLike replacingExpression = expression as SqlLike; this.expression = replacingExpression.expression; pattern = replacingExpression.Pattern; escape = replacingExpression.Escape; not = replacingExpression.Not; }
internal override object Clone(SqlNodeCloneContext context) { if (context.NodeMapping.ContainsKey(this)) { return(context.NodeMapping[this]); } var clone = new SqlLike((SqlExpression)expression.Clone(context), (SqlExpression)pattern.Clone(context), escape.IsNullReference() ? null : (SqlExpression)escape.Clone(context), not); context.NodeMapping[this] = clone; return(clone); }