Esempio n. 1
0
        public void Join6()
        {
            using (var db = new TestDbManager())
            {
                var q =
                    from g in db.GrandChild
                    join p in db.Parent4 on g.Child.ParentID equals p.ParentID
                    select g;

                var ctx = q.GetContext();

                ctx.BuildExpression(null, 0);

                var sql = db.GetSqlText(ctx.SqlQuery);

                CompareSql(sql, @"
					SELECT
						[g].[ParentID],
						[g].[ChildID],
						[g].[GrandChildID]
					FROM
						[GrandChild] [g]
							LEFT JOIN [Child] [t1] ON [g].[ParentID] = [t1].[ParentID] AND [g].[ChildID] = [t1].[ChildID]
							INNER JOIN [Parent] [p] ON [t1].[ParentID] = [p].[ParentID]"                            );
            }
        }