private static void Task2()
        {
            AcademyContext context = new AcademyContext();

            using (context)
            {
                // ~1300 queries
                var townsSlow = context.Employees.ToList()
                    .Select(e => e.Address).ToList()
                    .Select(a => a.Town).ToList()
                    .Where(t => t.Name == "Sofia");

                // 4 queries
                var townsFast = context.Employees.Include("Address.Town")
                    .Where(e => e.Address.Town.Name == "Sofia");

                foreach (var item in townsFast)
                {
                    Console.WriteLine(item.Address.Town.Name);
                }
            }
        }
        private static void Task1()
        {
            AcademyContext context = new AcademyContext();

            using (context)
            {
                // without include - total queries: 338
                foreach (var employee in context.Employees)
                {
                    Console.WriteLine("Name: {0} {1} {2}, Department: {3}, Town: {4}",
                        employee.FirstName, employee.MiddleName, employee.LastName,
                        employee.Department, employee.Address.Town);
                }

                // with 2 includes - total queries: 1
                foreach (var employee in context.Employees.Include("Address.Town").Include("Department"))
                {
                    Console.WriteLine("Name: {0} {1} {2}, Department: {3}, Town: {4}",
                        employee.FirstName, employee.MiddleName, employee.LastName,
                        employee.Department, employee.Address.Town);
                }
            }
        }