示例#1
0
        public void TestBuildsSelectiveUpdateQuery()
        {
            //--Act
            var query = new SqlServerUpdateQueryBuilder().Update <Client>(c => c.ModifiedByUserId);

            //--Assert
            Console.WriteLine(query);
            var queryLines = SplitQuery(query);

            Assert.AreEqual(3, queryLines.Length);
            Assert.AreEqual("update [Client]", queryLines[0]);
            Assert.AreEqual("set [ModifiedByUserId] = @ModifiedByUserId", queryLines[1]);
            Assert.AreEqual("where [Id] = @Id", queryLines[2]);
        }
示例#2
0
        public void TestBuildsUpdateQuery()
        {
            //--Act
            var query = new SqlServerUpdateQueryBuilder().Update <Client>();

            //--Assert
            Console.WriteLine(query);
            var queryLines = SplitQuery(query);

            Assert.AreEqual(3, queryLines.Length);
            Assert.AreEqual("update [Client]", queryLines[0]);
            Assert.AreEqual("set [ModifiedByUserId] = @ModifiedByUserId, [ModifiedDateUtc] = @ModifiedDateUtc, [Name] = @Name, [IsActive] = @IsActive", queryLines[1]);
            Assert.AreEqual("where [Id] = @Id", queryLines[2]);
        }
示例#3
0
        public void TestBuildsSelectiveUpdateQueryWhereFieldHasValue()
        {
            //--Act
            var query = new SqlServerUpdateQueryBuilder().Update(new ValuedUpdateBuilder <SuperEmployee>()
                                                                 .Set(se => se.SomeAwesomeFieldB, null)
                                                                 .Filter(se => se.SomeAwesomeFieldA, Guid.NewGuid().ToString()));

            //--Assert
            Console.WriteLine(query);
            var queryLines = SplitQuery(query);

            Assert.AreEqual(3, queryLines.Length);
            Assert.AreEqual("update [SuperEmployee]", queryLines[0]);
            Assert.AreEqual("set [SomeAwesomeFieldB] = @SomeAwesomeFieldB", queryLines[1]);
            Assert.AreEqual("where [SomeAwesomeFieldA] = @SomeAwesomeFieldA", queryLines[2]);
        }
示例#4
0
        public void TestBuildsSelectiveUpdateQueryWithBuilder()
        {
            //--Act
            var query = new SqlServerUpdateQueryBuilder().Update(new UpdateBuilder <Client>()
                                                                 .Set(x => x.ModifiedDateUtc)
                                                                 .Filter(x => x.CreatedByUserId));

            //--Assert
            Console.WriteLine(query);
            var queryLines = SplitQuery(query);

            Assert.AreEqual(3, queryLines.Length);
            Assert.AreEqual("update [Client]", queryLines[0]);
            Assert.AreEqual("set [ModifiedDateUtc] = @ModifiedDateUtc", queryLines[1]);
            Assert.AreEqual("where [CreatedByUserId] = @CreatedByUserId", queryLines[2]);
        }