static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");
            BierenService bierenService = new BierenService();
            var           result        = bierenService.GeefAlleBierenVoorSoort();

            Console.ReadKey();
        }
Exemplo n.º 2
0
        static void Main(string[] args)
        {
            BierenService service = new BierenService();

            Console.WindowWidth = 160;
            #region alle bieren
            //Console.WriteLine("{0,-20}{1,-100}{2,-20}{3,-20}", "Nummer", "Naam", "Alcohol",
            //"Brouwer");
            //foreach (Bier bier in service.Bieren)
            //{
            //    Console.WriteLine("{0,-20}{1,-100}{2,-20}{3,-20}", bier.BierNr, bier.Naam,
            //    bier.Alcohol, bier.Brouwer);
            //}
            #endregion

            List <Bier> bieren = service.Bieren;
            /*BIEREN VAN JUPILER*/
            var bierenjupiler = bieren.Where(m => m.Brouwer.ToLower() == "jupiler").ToList();
            Show(bierenjupiler);

            /*BIEREN MET MEER DAN 7% ALCOHOL*/
            //var alcoholZeven = bieren.Where(a => a.Alcohol > 7).ToList();
            //Show(alcoholZeven);

            /*BIEREN MET DELHAIZE ALS BROUWER*/
            //var brouwerDelhaize = bieren.Where(m => m.Brouwer.ToLower().Contains("delhaize")).ToList();
            //Show(brouwerDelhaize);

            /*BIER MET NUMMER 120*/
            //var bierNmr = bieren.Where(n => n.BierNr == 120);
            //Show(bierNmr);

            /*BIEREN VAN BROUWER JUPILER EN <=5% ALCOHOL*/
            //var jupVijf = bieren.Where(b => b.Brouwer.ToLower() == "jupiler")
            //                            .Where(a => a.Alcohol <= 5).ToList();
            //Show(jupVijf);

            /*BIEREN VAN BROUWERS JUPILER, PALM, ARTOIS*/
            //var drieBrouwers = bieren.Where(b => b.Brouwer.ToLower() == "jupiler" || b.Brouwer.ToLower() == "palm" || b.Brouwer.ToLower() == "artois")
            //                                 .OrderBy(b => b.Brouwer).ToList();
            //Show(drieBrouwers);

            /*GEMMIDELDE ALCOHOLPERCENTAGE*/
            var brouwersGroupedBy = bieren.GroupBy(b => b.Brouwer);
            Dictionary <string, decimal> results = new Dictionary <string, decimal>();

            foreach (var group in brouwersGroupedBy)
            {
                results.Add(group.Key, group.Average(a => a.Alcohol));
            }
            Show(results);


            Console.ReadLine();
        }
Exemplo n.º 3
0
 static void Main(string[] args)
 {
     BierenService service = new BierenService();
     Console.WindowWidth = 160;
     #region test
     //Console.WriteLine("{0,-20}{1,-100}{2,-20}{3,-20}", "Nummer", "Naam", "Alcohol", "Brouwer");
     //foreach (Bier bier in service.Bieren)
     //{
     //    Console.WriteLine("{0,-20}{1,-100}{2,-20}{3,-20}", bier.BierNr, bier.Naam, bier.Alcohol, bier.Brouwer);
     //}
     #endregion
     #region opgave 1
     //List<Bier> meerDan7Procent = service.Bieren.Where(b => b.Alcohol > 7).ToList();
     //ShowBierenList(meerDan7Procent);
     #endregion
     #region opgave 2
     //List<Bier> delhaize = service.Bieren.Where(b => b.Naam.ToLower().Contains("delhaize")).ToList();
     //ShowBierenList(delhaize);
     #endregion
     #region opgave 3
     //List<Bier> no120 = service.Bieren.Where(b => b.BierNr == 120).ToList();
     //ShowBierenList(no120);
     #endregion
     #region opgave 4
     //List<Bier> jup5 = service.Bieren.Where(b => b.Brouwer.ToLower() == "jupiler").Where(b => b.Alcohol<=5).ToList();
     //ShowBierenList(jup5);
     #endregion
     #region opgave 5
     //List<Bier> jupartpalm = service.Bieren.Where(b => b.Brouwer.ToLower() == "jupiler"||b.Brouwer.ToLower() == "artois" || b.Brouwer.ToLower() == "palm").OrderBy(b => b.Brouwer).ToList();
     //ShowBierenList(jupartpalm);
     #endregion
     #region opgave 6
     List<String> brouwers = service.Bieren.Select(x => x.Brouwer).Distinct().ToList();
     IDictionary<string, decimal> averages = new Dictionary<string, decimal>();
     foreach (var item in brouwers)
     {
         decimal average = service.Bieren.Where(x => x.Brouwer == item).Average(x => x.Alcohol);
         averages.Add(item, Math.Round(average, 2));
     }
     foreach (var item in averages)
     {
         Console.WriteLine($"Brouwer: {item.Key} Alcohol: {item.Value}");
     }
     #endregion
 }
Exemplo n.º 4
0
        static async Task Main(string[] args)
        {
            //client.DefaultRequestHeaders.Clear();
            //client.DefaultRequestHeaders.Add("Accept", "application/json");

            // var stringResponse =  client.GetStringAsync("https://localhost:44314/");
            //of de unsecured versie "http://localhost:59798"

            //var stringResponse = client.GetStringAsync("http://www.syntrawest.somee.com/api/Bieren/GeefAlleBieren");
            //var msg = await stringResponse;
            //Console.Write(msg);
            BierenService bierenService = new BierenService();
            List <Bier>   bieren        = await bierenService.GeefBierenAsync();

            Console.WriteLine("Aantal bieren: " + bieren.Count);
            //via linq een selectie vragen bv Eerste bier:
            Bier bier = bieren.FirstOrDefault();

            if (bier != null)
            {
                Console.WriteLine(bier);
                Random rand = new Random();
                Console.WriteLine("Bier van de maand:");
                Bier randomBier = bieren.ElementAt(rand.Next(0, bieren.Count));
                Console.WriteLine(randomBier);
            }

            Bier bier2 = await bierenService.GeefBierVoorBierNr(5);

            if (bier2 == null)
            {
                Console.WriteLine("Bier met BierNr 5 niet gevonden");
            }
            else
            {
                Console.WriteLine(bier2);
            }

            //Biersoorten:

            List <BierSoort> soorten = await bierenService.GeefBierSoortenAsync();

            Console.WriteLine("Aantal soorten: " + soorten.Count);
            //via linq een selectie vragen
            BierSoort soort = soorten.FirstOrDefault();

            if (soort != null)
            {
                Console.WriteLine($"SoortNr: + {soort.SoortNr} - Naam: {soort.Soort}");
            }
            Console.WriteLine();


            List <Brouwer> brouwers = await bierenService.GeefBrouwersAsync();

            Console.WriteLine("Aantal Brouwers: " + brouwers.Count);
            //Brouwers met postcode=9000
            List <Brouwer> brouwersUitGent = brouwers.Where(b => b.PostCode == 9000).ToList();

            Console.WriteLine("Brouwers uit gent: " + brouwersUitGent.Count);
            brouwersUitGent.ForEach(b => Console.WriteLine("\t" + b.BrNaam));
            //Oefening Linq 1 : Geef alle Biernamen met hun soortnamen, gesorteerd op biernaam, daarna op soortnaam
            var bierenEnSoortnaam = from s in soorten
                                    join b in bieren on s.SoortNr equals b.SoortNr
                                    orderby b.Naam, s.Soort
                select new
            {
                Biernaam  = b.Naam,
                Soortnaam = s.Soort
            };

            foreach (var item in bierenEnSoortnaam)
            {
                Console.WriteLine(item);
            }
            //Oefening Linq 2 : Geef per biersoort het aantal bieren (geef soortnaam en aantal bieren)
            //Method notatie
            var bierSoortAantalBieren = soorten.GroupJoin(bieren, soort => soort.SoortNr, bier => bier.SoortNr,
                                                          (soort, bier) => new
            {
                SoortNaam  = soort.Soort,
                AantalBier = bier.Count()
            }).ToList();
            //Query notatie
            var aantalBierenInSoort = from b in bieren
                                      join s in soorten on b.SoortNr equals s.SoortNr
                                      group s by s.Soort
                                      into soortGroep
                                      select new { s = soortGroep.Key, aantalBieren = soortGroep.Count() };

            //Oefening Linq 3 : Geef voor de brouwers de gemiddelde omzet per postcode (geef postcode en gemiddelde omzet)
            //Pils
            var gemOmzetPerPostcode = from br in brouwers
                                      group br by br.PostCode
                                      into postGroep
                                      select new { br       = postGroep.Key,
                                                   gemOmzet = (from gem in postGroep select gem.Omzet).Average() };
            var gemOmzetPerPostcode2 = from br in brouwers
                                       group br by br.PostCode into postGroep
                                       select new { br       = postGroep.Key,
                                                    gemOmzet = postGroep.Average(b => b.Omzet) };
            //Oefening Linq 4:  Geef alle brouwers, gesorteerd per gemeente, daarna op brouwernaam

            var alleBrouwers = from b in brouwers
                               orderby b.Gemeente, b.BrNaam
            select b;

            alleBrouwers.ToList().ForEach(b => Console.WriteLine($"Gemeente {b.Gemeente} - Brouwer {b.BrouwerNr} - {b.BrNaam} - Omzet: {b.Omzet}"));
            //Oefening Linq 5:  Geef een Lijst van namen van biersoorten en per biersoort de lijst van bieren in de soort
            //Pils
            //    Jupiler
            //    Heineken
            //    Stella
            //Geuze
            //    Liefmans Kriek
            //    ...



            //Query Notatie
            var bierPersoortGroep = from s in soorten
                                    join b in bieren on s.SoortNr equals b.SoortNr
                                    into bierenGroep
                                    orderby s.Soort
                                    select new
            {
                SoortNaam = s.Soort,
                Bieren    = from b in bierenGroep select b
            };

            foreach (var groep in bierPersoortGroep)
            {
                Console.WriteLine(groep.SoortNaam + ":");
                foreach (Bier b in  groep.Bieren)
                {
                    Console.WriteLine("\t" + b.Naam);
                }
            }
            //Met Method Notatie (Evert)
            var lijstMetNamenPerBiersoort2 = soorten.GroupJoin(bieren, soort => soort.SoortNr, bier => bier.SoortNr,
                                                               (soort, bier) => new
            {
                SoortNaam = soort.Soort,
                Bieren    = bieren.Where(b => b.SoortNr == soort.SoortNr)
            }).ToList();

            foreach (var item in lijstMetNamenPerBiersoort2)
            {
                Console.WriteLine(item.SoortNaam);
                foreach (var b in item.Bieren)
                {
                    Console.WriteLine("\t" + b.Naam);
                }
            }
            //foreach (var item in bierenPerSoort)
            //{
            //    Console.WriteLine(item.SoortNaam);
            //    foreach (var b in item.Bieren)
            //    {
            //        Console.WriteLine("\t" + b.Naam);
            //    }
            //}
            //Oefening Linq6: geef gesorteerde lijst terug (via Linq query) op naam van biersoort, daarna op bier (binnen één biersoort)
            //Method Notatie
            var lijstMetNamenPerBiersoort = lijstMetNamenPerBiersoort2.OrderBy(b => b.SoortNaam).ThenBy(b => b.Bieren.Select(b => b.Naam)).ToList();
            //Query Notatie
            var bierenPerSoortOrdered = from s in soorten
                                        join b in bieren on s.SoortNr equals b.SoortNr
                                        into bierenGroep
                                        orderby s.Soort
                                        select new
            {
                SoortNaam = s.Soort,
                Bieren    = from b in bierenGroep orderby b.Naam select b
            };


            foreach (var item in bierenPerSoortOrdered)
            {
                Console.WriteLine(item.SoortNaam);
                foreach (var b in item.Bieren)
                {
                    Console.WriteLine("\t" + b.Naam);
                }
            }
            //Oefening StockExchangeService maken:
            //Maak onder de folder Services een nieuwe klasse StockExchangeService aan die de aandeelgegevens
            //opvraagt voor een bepaald aandeel (bv InBev) ("https://financialmodelingprep.com/api/v3/quote/ABI.BR?apikey=8e5b68b6bac6e3fe5c98c5781306f694")
            //De basis-Url is "https://financialmodelingprep.com/api/v3/". Zet deze in de Constructor van StockExchangeService
            //De unieke code van het aandeel Inbev is ABI.BR
            //Maak een Methode GeefAandeelInfoAsync(string code) in de StockEchangeService die voor een aandeel code de volgende info teruggeeft:
            //Symbol (string), Name (string), Price(double), ChangesPercentage(double) en Change(double). Maak een Model class Aandeel die deze properties heeft
            //Opgelet: wanneer je Deserialiseert met JsonConvert gebruik een List<Aandeel>. In deze List zit één enkel Aandeel-object
            //Roep de Methode GeefAandeelInfoAsync("ABI.BR") aan vanuit program.cs (ConsoleApp) en schrijf deze 5 properties van het aandeel naar de console
            //De url geeft de volgende gegevens terug:
            //[ {
            //            "symbol" : "ABI.BR",
            //  "name" : "Anheuser-Busch InBev SA/NV",
            //  "price" : 52.53000000,
            //  "changesPercentage" : -2.11000000,
            //  "change" : -1.13000000,
            //....
            //} ]
            Console.WriteLine("Tot ziens!");
        }