private bool LoadByPrimaryKeyDynamic(System.Int32 id)
        {
            AggregateTestQuery query = new AggregateTestQuery();

            query.Where(query.Id == id);
            return(this.Load(query));
        }
		public void Init2()
		{
            aggTestColl = new AggregateTestCollection();
            aggTest = new AggregateTest();
            aggTestQuery = new AggregateTestQuery();
			aggCloneColl = new AggregateTestCollection();
			aggClone = new AggregateTest();
			aggCloneQuery = new AggregateTestQuery();
		}
        protected void InitQuery(AggregateTestQuery query)
        {
            query.OnLoadDelegate = this.OnQueryLoaded;

            if (!query.es2.HasConnection)
            {
                query.es2.Connection = ((IEntityCollection)this).Connection;
            }
        }
		public void CacheQueryObject()
		{
            aggTestQuery = aggTestColl.Query;

			aggTestQuery
				.Select()
				.Where
				(
					aggTestQuery.Age <= aggTestQuery.Salary
				);
			Assert.IsTrue(aggTestQuery.Load());
			Assert.AreEqual(11, aggTestColl.Count);
		}
        public void WhereConjunctionOrNotNested()
        {
            AggregateTestQuery query = new AggregateTestQuery();

            query.Where
            (
                query.OrNot
                (
                    query.DepartmentID == 1,
                    query.And
                    (
                        query.IsActive == true,
                        query.Age == 28
                    )
                )
            );

            AggregateTestCollection coll = new AggregateTestCollection();
            Assert.IsTrue(coll.Load(query));

            switch (coll.es.Connection.ProviderSignature.DataProviderName)
            {
                case "EntitySpaces.MSAccessProvider":
                    Assert.AreEqual(29, coll.Count);
                    break;

                case "EntitySpaces.NpgsqlProvider":
                case "EntitySpaces.Npgsql2Provider":
                case "EntitySpaces.OracleClientProvider":
                case "EntitySpaces.SqlClientProvider":
                case "EntitySpaces.SqlServerCeProvider":
                case "EntitySpaces.SybaseSqlAnywhereProvider":
                case "EntitySpaces.VistaDBProvider":
                case "EntitySpaces.VistaDB4Provider":
                    Assert.AreEqual(24, coll.Count);
                    break;

                default:
                    Assert.AreEqual(24, coll.Count);
                    break;
            }
        }
        public void WhereConjunctionOrNotSeparateLines()
        {
            AggregateTestQuery query = new AggregateTestQuery();

            query.Where(query.DepartmentID == 1);

            query.es.DefaultConjunction = esConjunction.OrNot;
            query.Where(new esComparison(esParenthesis.Open));
            query.Where(query.IsActive == true);
            query.es.DefaultConjunction = esConjunction.And;
            query.Where(query.Age == 28);
            query.Where(new esComparison(esParenthesis.Close));

            AggregateTestCollection coll = new AggregateTestCollection();
            Assert.IsTrue(coll.Load(query));

            switch (coll.es.Connection.ProviderSignature.DataProviderName)
            {
                case "EntitySpaces.MSAccessProvider":
                    Assert.AreEqual(29, coll.Count);
                    break;

                case "EntitySpaces.NpgsqlProvider":
                case "EntitySpaces.Npgsql2Provider":
                case "EntitySpaces.OracleClientProvider":
                case "EntitySpaces.SqlClientProvider":
                case "EntitySpaces.SqlServerCeProvider":
                case "EntitySpaces.SybaseSqlAnywhereProvider":
                case "EntitySpaces.VistaDBProvider":
                case "EntitySpaces.VistaDB4Provider":
                    Assert.AreEqual(24, coll.Count);
                    break;

                default:
                    Assert.AreEqual(24, coll.Count);
                    break;
            }
        }
        public void WhereConjunctionAndNotNested()
        {
            AggregateTestQuery query = new AggregateTestQuery();

            query.Where
            (
                query.AndNot
                (
                    query.DepartmentID == 1,
                    query.And
                    (
                        query.IsActive == true,
                        query.Age == 28
                    )
                )
            );

            AggregateTestCollection coll = new AggregateTestCollection();
            Assert.IsTrue(coll.Load(query));
            Assert.AreEqual(2, coll.Count);
        }
        public void WhereConjunctionAndNotSeparateLines()
        {
            AggregateTestQuery query = new AggregateTestQuery();

            query.Where(query.DepartmentID == 1);

            query.es.DefaultConjunction = esConjunction.AndNot;
            query.Where(new esComparison(esParenthesis.Open));
            query.Where(query.IsActive == true);
            query.es.DefaultConjunction = esConjunction.And;
            query.Where(query.Age == 28);
            query.Where(new esComparison(esParenthesis.Close));

            AggregateTestCollection coll = new AggregateTestCollection();
            Assert.IsTrue(coll.Load(query));
            Assert.AreEqual(2, coll.Count);
        }
 public bool Load(AggregateTestQuery query)
 {
     this.query = query;
     InitQuery(this.query);
     return(Query.Load());
 }
        public void CrossDbJoin()
        {
            EmployeeCollection collection = new EmployeeCollection();
            collection.es.Connection.ConnectionString =
                UnitTestBase.GetFktString(collection.es.Connection);

            switch (collection.es.Connection.ProviderSignature.DataProviderName)
            {
                case "EntitySpaces.SqlClientProvider":
                    // AggregateDb
                    AggregateTestQuery aq = new AggregateTestQuery("a");
                    // ForeignKeyTest
                    EmployeeQuery eq = new EmployeeQuery("e");

                    eq.Select(eq.LastName, eq.FirstName, aq.Age);
                    eq.LeftJoin(aq).On(
                        eq.LastName == aq.LastName &
                        eq.FirstName == aq.FirstName);
                    eq.OrderBy(eq.LastName.Ascending,
                        eq.FirstName.Ascending);

                    Assert.IsTrue(collection.Load(eq));
                    Assert.AreEqual(22, collection[2].GetColumn("Age"));
                    break;

                default:
                    Assert.Ignore("SQL Server only");
                    break;
            }
        }