Beispiel #1
0
        public void Clone()
        {
            var item = new WhereItem("field1", "a string");
            var clone = item.Clone();

            Assert.AreEqual(item, clone);
            clone.Value = "something-else";
            Assert.AreNotEqual(item, clone);
            clone.Value = "a string";
            Assert.AreEqual(item, clone);

            var parm = new QueryParameter("someparm", "testvalue");
            var item2 = new WhereString("field2=@someparm or field3='value'", parm);

            var clause = new WhereClause(JoinType.And,item, item2);
            var clone2 = clause.Clone();
            Assert.AreEqual(clause, clone2);
            parm.Value = "testvalue2";
            Assert.AreNotEqual(clause, clone2);
            parm.Value = "testvalue";
            Assert.AreEqual(clause, clone2);

            item.Value = "n";
            Assert.AreNotEqual(clause, clone2);
            item.Value = "a string";
            Assert.AreEqual(clause, clone2);
        }
Beispiel #2
0
        public IWhereClause Add(string field, object value, ComparisonType comparisonType, JoinType joinType, bool parameterize = true)
        {
            IWhereItem crit;

            crit = new WhereItem(field, value, comparisonType);
            MergeWhere(crit, joinType);
            return(this);
        }
Beispiel #3
0
        public void IsEmpty()
        {
            var item = new WhereItem();
            Assert.IsTrue(item.IsEmpty);

            item.Field = "test";
            Assert.IsFalse(item.IsEmpty);
        }
Beispiel #4
0
        public void Create()
        {
            var item = new WhereItem("field1",123);
            Assert.AreEqual("field1=@field1", item.GetSql());
            Assert.AreEqual(1,item.Parameters.Count());

            item = new WhereItem("field1", "a string",ComparisonType.LikeEndsWith,false);
            Assert.AreEqual("field1 LIKE '%a string'", item.ToString());
        }
Beispiel #5
0
        public virtual IWhereItem Clone()
        {
            WhereItem clone = new WhereItem();

            clone.Field          = Field;
            clone.Value          = Value;
            clone.Parameterize   = Parameterize;
            clone.ComparisonType = ComparisonType;

            return(clone);
        }
Beispiel #6
0
        public void Clone()
        {
            var item = new WhereItem("field1","a string");
            var clone = item.Clone();

            Assert.AreEqual(item,clone);
            clone.Value="something-else";
            Assert.AreNotEqual(item,clone);
            clone.Value = "a string";
            Assert.AreEqual(item,clone);
        }
Beispiel #7
0
        public void Create()
        {
            var item1 = new WhereItem("field1",123);

            var parm = new QueryParameter("someparm","testvalue");
            var item2 = new WhereString("field2=@someparm",parm);
            var clause = new WhereClause(JoinType.And, item1, item2);

            Assert.AreEqual("field1=@field1 AND (field2=@someparm)", clause.GetSql());

            Assert.AreEqual(2, clause.Parameters.Count());
        }
Beispiel #8
0
        public void Combine()
        {
            var item1 = new WhereItem("field1", 123);

            var parm = new QueryParameter("someparm", "testvalue");
            var item2 = new WhereString("field2=@someparm or field3='value'", parm);
            var item3 = new WhereItem("field4", 123,parameterize:false);

            var clause = new WhereClause(JoinType.And, item1, item2);

            Assert.AreEqual("field1=@field1 AND (field2=@someparm or field3='value')", clause.GetSql());
            var newClause = clause.Clone();
            newClause.Add(item3,JoinType.Or);
            Assert.AreEqual("(field1=@field1 AND (field2=@someparm or field3='value')) OR field4=123", newClause.GetSql());

            Assert.AreEqual(2, newClause.Parameters.Count());
        }
Beispiel #9
0
        public IWhereClause Add(string field, object value, ComparisonType comparisonType, JoinType joinType, bool parameterize = true)
        {
            IWhereItem crit;

            crit = new WhereItem(field, value, comparisonType);
            MergeWhere(crit, joinType);
            return this;
        }
Beispiel #10
0
        public virtual IWhereItem Clone()
        {
            WhereItem clone = new WhereItem();
            clone.Field = Field;
            clone.Value = Value;
            clone.Parameterize = Parameterize;
            clone.ComparisonType = ComparisonType;

            return clone;
        }