コード例 #1
0
        public void DeleteEntries_string_contains_condition()
        {
            ARLoginContext context = null;

            try
            {
                context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd);
                ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context);
                ARSet <NRemedy_Test_Regular_Form>   set   = new ARSet <NRemedy_Test_Regular_Form>(context);
                var q = from s in set
                        where s.CharacterField.Contains(TestCharacterFieldValueChinese + "%") && s.IntegerField == 3
                        select s.RequestID;
                Assert.AreEqual(2, q.Count());

                proxy.DeleteEntryList("'Character Field' LIKE \"" + TestCharacterFieldValueChinese + "%\" AND 'Integer Field' = 3");

                //after delete the count should be 0
                Assert.AreEqual(0, q.Count());
            }
            finally
            {
                if (context != null)
                {
                    context.Dispose();
                }
            }
        }
コード例 #2
0
        public void DeleteEntries_single_condition()
        {
            ARLoginContext context = null;

            try
            {
                context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd);
                ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context);
                ARSet <NRemedy_Test_Regular_Form>   set   = new ARSet <NRemedy_Test_Regular_Form>(context);
                var q = from s in set
                        where s.CharacterField == TestCharacterFieldValue
                        select s.RequestID;
                Assert.AreEqual(7, q.Count());

                proxy.DeleteEntryList(m => m.CharacterField == TestCharacterFieldValue);

                //after delete the count should be 0
                Assert.AreEqual(0, q.Count());
            }
            finally {
                if (context != null)
                {
                    context.Dispose();
                }
            }
        }
コード例 #3
0
        public static void DeleteEntryList <TModel>(this ARProxy <TModel> proxy, Expression <Func <TModel, bool> > expression)
            where TModel : ARBaseForm
        {
            if (expression == null)
            {
                throw new ArgumentNullException("expression must not null. If want to delete all entries, try to use m => true");
            }
            ConditionExpressionVisitor visitor = new ConditionExpressionVisitor();
            var             expEvaled          = Evaluator.PartialEval(expression);
            ConditionResult tr = visitor.Translate(expEvaled);
            string          qu = tr.Qulification == null ? null : tr.Qulification.ToString();

            proxy.DeleteEntryList(qu);
        }
コード例 #4
0
        public void DeleteEntries_constant_condition_true()
        {
            ARLoginContext context = null;

            try
            {
                context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd);
                ARProxy <NRemedy_Test_Regular_Form> proxy = new ARProxy <NRemedy_Test_Regular_Form>(context);

                NRemedy_Test_Regular_Form newentry = new NRemedy_Test_Regular_Form();
                newentry.CharacterField     = TestCharacterFieldValue;
                newentry.Radio_Button_Field = null;
                newentry.IntegerField       = 1;
                for (int i = 0; i < 7; i++)
                {
                    proxy.CreateEntry(newentry);
                }

                newentry.CharacterField = TestCharacterFieldValueChinese;
                newentry.IntegerField   = 2;
                for (int i = 0; i < 9; i++)
                {
                    proxy.CreateEntry(newentry);
                }

                ARSet <NRemedy_Test_Regular_Form> set = new ARSet <NRemedy_Test_Regular_Form>(context);
                var q = from s in set
                        select s.RequestID;
                int count = q.Count();
                Assert.IsTrue(count > 0);

                proxy.DeleteEntryList(null);

                //after delete the count should be 0
                Assert.AreEqual(0, q.Count());
            }
            finally
            {
                if (context != null)
                {
                    context.Dispose();
                }
            }
        }
コード例 #5
0
        public void DeleteEntries_constant_condition_true()
        {
            ARLoginContext context = null;
            try
            {
                context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd);
                ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context);

                NRemedy_Test_Regular_Form newentry = new NRemedy_Test_Regular_Form();
                newentry.CharacterField = TestCharacterFieldValue;
                newentry.Radio_Button_Field = null;
                newentry.IntegerField = 1;
                for (int i = 0; i < 7; i++)
                {
                    proxy.CreateEntry(newentry);
                }

                newentry.CharacterField = TestCharacterFieldValueChinese;
                newentry.IntegerField = 2;
                for (int i = 0; i < 9; i++)
                {
                    proxy.CreateEntry(newentry);
                }

                ARSet<NRemedy_Test_Regular_Form> set = new ARSet<NRemedy_Test_Regular_Form>(context);
                var q = from s in set
                        select s.RequestID;
                int count = q.Count();
                Assert.IsTrue(count > 0);

                proxy.DeleteEntryList(null);

                //after delete the count should be 0
                Assert.AreEqual(0, q.Count());
            }
            finally
            {
                if (context != null)
                    context.Dispose();
            }
        }
コード例 #6
0
        public void DeleteEntries_string_contains_condition()
        {
            ARLoginContext context = null;
            try
            {
                context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd);
                ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context);
                ARSet<NRemedy_Test_Regular_Form> set = new ARSet<NRemedy_Test_Regular_Form>(context);
                var q = from s in set
                        where s.CharacterField.Contains(TestCharacterFieldValueChinese + "%") && s.IntegerField == 3
                        select s.RequestID;
                Assert.AreEqual(2, q.Count());

                proxy.DeleteEntryList("'Character Field' LIKE \"" + TestCharacterFieldValueChinese + "%\" AND 'Integer Field' = 3");

                //after delete the count should be 0
                Assert.AreEqual(0, q.Count());
            }
            finally
            {
                if (context != null)
                    context.Dispose();
            }
        }
コード例 #7
0
        public void DeleteEntries_single_condition()
        {
            ARLoginContext context = null;
            try
            {
                context = new ARLoginContext(TestServer, TestAdmin, TestAdminPwd);
                ARProxy<NRemedy_Test_Regular_Form> proxy = new ARProxy<NRemedy_Test_Regular_Form>(context);
                ARSet<NRemedy_Test_Regular_Form> set = new ARSet<NRemedy_Test_Regular_Form>(context);
                var q = from s in set
                        where s.CharacterField == TestCharacterFieldValue
                        select s.RequestID;
                Assert.AreEqual(7, q.Count());

                proxy.DeleteEntryList(m => m.CharacterField == TestCharacterFieldValue);

                //after delete the count should be 0
                Assert.AreEqual(0, q.Count());
            }
            finally {
                if (context != null)
                    context.Dispose();
            }
        }