Esempio n. 1
0
        private static void ObjectQuery()
        {
            const string country = "Brazil";

            using (var data = new Formula1v2Entities())
            {
                IQueryable <Racer> racers = data.Racers.Where(racer => racer.Nationality == country);
                foreach (Racer racer in racers)
                {
                    Console.WriteLine(racer.FirstName);
                }
            }
        }
Esempio n. 2
0
 private static void LinqToEntities()
 {
     using (var data = new Formula1v2Entities())
     {
         IOrderedQueryable <Racer> racers = from racer in data.Racers
                                            where racer.Wins > 40
                                            orderby racer.Wins descending
                                            select racer;
         foreach (Racer racer in racers)
         {
             Console.WriteLine("{0} {1}", racer.FirstName, racer.LastName);
         }
     }
 }
Esempio n. 3
0
        private static void ObjectQueryFiltering()
        {
            const string country = "USA";

            using (var formula1 = new Formula1v2Entities())
            {
                IQueryable <Racer> racers = formula1.Racers.Where(racer => racer.Nationality == country)
                                            .OrderByDescending(racer => racer.Wins)
                                            .ThenByDescending(racer => racer.Starts)
                                            .Take(3);
                foreach (Racer racer in racers)
                {
                    Console.WriteLine("{0} {1}, wins: {2}, starts: {3}", racer.FirstName, racer.LastName, racer.Wins,
                                      racer.Starts);
                }
            }
        }
Esempio n. 4
0
 private static void LinqToEntities2()
 {
     using (var entities = new Formula1v2Entities())
     {
         var query = from racer in entities.Racers
                     from raceResult in racer.RaceResults
                     where raceResult.Position <= 3 && raceResult.Position >= 1 && racer.Nationality == "Switzerland"
                     group racer by racer.Id
                     into g
                     let podium = g.Count()
                                  orderby podium descending
                                  select new
         {
             Racer   = g.FirstOrDefault(),
             Podiums = podium
         };
         foreach (var q in query)
         {
             Console.WriteLine("{0} {1} {2}", q.Racer.FirstName, q.Racer.LastName, q.Podiums);
         }
     }
 }