Adventure.Works.LiveDemo.Startup.QuerySix C# (CSharp) Метод

QuerySix() публичный статический Метод

Eager loading done properly With explicit join, server filtering and projection
public static QuerySix ( ) : void
Результат void
        public static void QuerySix()
        {
            using (var dbContext = new AdventureWorks2014Entities())
            {
                Console.WriteLine("Enter last name to search email addresses: ");
                var lastName = Console.ReadLine();

                //var emails = from person in dbContext.People
                //             join emailAddress in dbContext.EmailAddresses
                //             on person.BusinessEntityID equals emailAddress.BusinessEntityID
                //             where person.LastName == lastName
                //             select emailAddress.EmailAddress1;

                //var emails = dbContext.People
                //    .Where(x => x.LastName == lastName)
                //    .SelectMany(x => x.EmailAddresses)
                //    .Select(x => x.EmailAddress1);

                var emails =
                    dbContext.People
                    .Where(x => x.LastName == lastName)
                    .Join(dbContext.EmailAddresses,
                          l => l.BusinessEntityID,
                          r => r.BusinessEntityID,
                          (l, r) =>  r.EmailAddress1 );

                foreach (var email in emails)
                {
                    Console.WriteLine(email);
                }
            }
        }