Exemple #1
0
            protected override ICloneableElement Clone(Dictionary <ICloneableElement, ICloneableElement> objectTree, Predicate <ICloneableElement> doClone)
            {
                if (!doClone(this))
                {
                    return(this);
                }

                if (!objectTree.TryGetValue(this, out var clone))
                {
                    objectTree.Add(this, clone = new Between(
                                       (ISqlExpression)Expr1.Clone(objectTree, doClone),
                                       IsNot,
                                       (ISqlExpression)Expr2.Clone(objectTree, doClone),
                                       (ISqlExpression)Expr3.Clone(objectTree, doClone)));
                }

                return(clone);
            }
Exemple #2
0
        protected override ICloneableElement Clone(Dictionary <ICloneableElement, ICloneableElement> objectTree,
                                                   Predicate <ICloneableElement> doClone)
        {
            if (!doClone(this))
            {
                return(this);
            }

            ICloneableElement clone;

            if (!objectTree.TryGetValue(this, out clone))
            {
                objectTree.Add(this, clone = new Like(
                                   (IQueryExpression)Expr1.Clone(objectTree, doClone), IsNot,
                                   (IQueryExpression)Expr2.Clone(objectTree, doClone), Escape));
            }

            return(clone);
        }
Exemple #3
0
        public ICloneableElement Clone(Dictionary <ICloneableElement, ICloneableElement> objectTree, Predicate <ICloneableElement> doClone)
        {
            if (!doClone(this))
            {
                return(this);
            }

            if (!objectTree.TryGetValue(this, out var clone))
            {
                objectTree.Add(this, clone = new SqlBinaryExpression(
                                   SystemType,
                                   (ISqlExpression)Expr1.Clone(objectTree, doClone),
                                   Operation,
                                   (ISqlExpression)Expr2.Clone(objectTree, doClone),
                                   Precedence));
            }

            return(clone);
        }
Exemple #4
0
            protected override ICloneableElement Clone(Dictionary <ICloneableElement, ICloneableElement> objectTree, Predicate <ICloneableElement> doClone)
            {
                if (!doClone(this))
                {
                    return(this);
                }

                if (!objectTree.TryGetValue(this, out var clone))
                {
                    objectTree.Add(this, clone = new ExprExpr(
                                       (ISqlExpression)Expr1.Clone(objectTree, doClone), Operator, (ISqlExpression)Expr2.Clone(objectTree, doClone), WithNull));
                }

                return(clone);
            }