示例#1
0
        public void SelectPropertiesFromElem_BuildsCorrectQueryExpression()
        {
            var ctx = new CrmQueryContext(TestOrgContext.Get());
            
            var query = (CrmQueryable<string>)TestOrgContext.Get()
                .CreateBetterQueryable<SystemUser>()
                .Select(su => su.FullName);

            var expression = ctx.GetQueryExpression(query.Expression);

            Assert.That(expression.ColumnSet.Columns, Is.Not.Empty);
            Assert.That(expression.ColumnSet.AllColumns, Is.False);
            Assert.That(expression.ColumnSet.Columns.Contains("fullname"));
        }
示例#2
0
        public void Where_Integer_Equals()
        {
            var ctx = new CrmQueryContext(TestOrgContext.Get());

            var query = (CrmQueryable<SystemUser>)TestOrgContext.Get()
                .CreateBetterQueryable<SystemUser>()
                .Where(su => su.TimeZoneRuleVersionNumber == 1);

            var expression = ctx.GetQueryExpression(query.Expression);

            Assert.That(expression.EntityName, Is.EqualTo(SystemUser.EntityLogicalName));
            Assert.That(expression.LinkEntities, Is.Empty);
            Assert.That(expression.Criteria.Conditions, Is.Not.Empty);
            Assert.That(expression.Criteria.Conditions[0].AttributeName, Is.EqualTo("timezoneruleversionnumber"));
            Assert.That(expression.Criteria.Conditions[0].Operator, Is.EqualTo(ConditionOperator.Equal));
            Assert.That(expression.Criteria.Conditions[0].Values, Is.EquivalentTo(new[] { 1 }));
        }