Example #1
0
        public void AddParametersToCommand()
        {
            var factory = DbProviderFactories.GetFactory("System.Data.SqlClient");
            var command = factory.CreateCommand();

            //
            var condition = Check.Op("a", 10).Or(Check.Op("a", 20)).Or(Check.Op("b", 30)).Or(Check.Op("b", 40));

            DbHelper.AddConditionParametersToCommand(command, condition, new SqlQueryService());

            Assert.AreEqual(4, command.Parameters.Count);

            Assert.AreEqual("@a", command.Parameters[0].ParameterName);
            Assert.AreEqual(10, command.Parameters[0].Value);
            Assert.AreEqual(ParameterDirection.Input, command.Parameters[0].Direction);
            Assert.AreEqual(DbType.Int32, command.Parameters[0].DbType);

            Assert.AreEqual("@a2", command.Parameters[1].ParameterName);
            Assert.AreEqual(20, command.Parameters[1].Value);
            Assert.AreEqual(ParameterDirection.Input, command.Parameters[1].Direction);
            Assert.AreEqual(DbType.Int32, command.Parameters[1].DbType);

            Assert.AreEqual("@b", command.Parameters[2].ParameterName);
            Assert.AreEqual(30, command.Parameters[2].Value);
            Assert.AreEqual(ParameterDirection.Input, command.Parameters[2].Direction);
            Assert.AreEqual(DbType.Int32, command.Parameters[2].DbType);

            Assert.AreEqual("@b2", command.Parameters[3].ParameterName);
            Assert.AreEqual(40, command.Parameters[3].Value);
            Assert.AreEqual(ParameterDirection.Input, command.Parameters[3].Direction);
            Assert.AreEqual(DbType.Int32, command.Parameters[3].DbType);
        }
Example #2
0
        public void AddConditionParametersToCommand()
        {
            var factory = DbProviderFactories.GetFactory("System.Data.SqlClient");
            var command = factory.CreateCommand();

            DbHelper.AddConditionParametersToCommand(command, Check.Op("Id", 1).And(Check.Op("RoleId", 5)), new SqlQueryService());

            Assert.AreEqual(2, command.Parameters.Count);

            Assert.AreEqual("@id", command.Parameters[0].ParameterName);
            Assert.AreEqual(1, command.Parameters[0].Value);
            Assert.AreEqual(ParameterDirection.Input, command.Parameters[0].Direction);
            Assert.AreEqual(DbType.Int32, command.Parameters[0].DbType);

            Assert.AreEqual("@roleid", command.Parameters[1].ParameterName);
            Assert.AreEqual(5, command.Parameters[1].Value);
            Assert.AreEqual(ParameterDirection.Input, command.Parameters[1].Direction);
            Assert.AreEqual(DbType.Int32, command.Parameters[1].DbType);
        }