Esempio n. 1
0
 private static void InjiserOrdre(string epost, Stopp startStopp, Stopp sluttStopp, Ruter rute, Billettyper billettype, int antall, BussContext context)
 {
     for (int i = 0; i < antall; i++)
     {
         List <Avganger> avganger = context.Avganger.Where(a => a.Rute == rute)
                                    .OrderBy(a => a.Avreise).Take(antall).ToList();;
         Ordre ordre = new Ordre
         {
             Epost      = epost,
             StartStopp = startStopp,
             SluttStopp = sluttStopp,
             Sum        = 250,
             Rute       = rute,
             Avgang     = avganger[i]
         };
         Ordrelinjer ordrelinje = new Ordrelinjer
         {
             Billettype = billettype,
             Ordre      = ordre
         };
         avganger[i].SolgteBilletter++;
         context.Ordre.Add(ordre);
         context.Ordrelinjer.Add(ordrelinje);
     }
 }
Esempio n. 2
0
        /* Metode som tar inn et Ruter-objekt en liste med Stopp og en
         * DB-context og injiserer det inn i databasen */

        private static void InjiserRute(Ruter rute, string[] stoppListe, BussContext context)
        {
            context.Ruter.Add(rute); // Nytt instans av Ruter i databasen

            // Lopper gjennom alle stoppene i listen med stopp
            int stoppNummer = 1;

            foreach (string stoppnavn in stoppListe)
            {
                /* Finner ut om stoppet allerede eksisterer i databasen,
                 * hvis ikke legges det til et nytt instans av Stopp i databasen */
                Stopp stopp = context.Stopp.FirstOrDefault(s => s.Navn == stoppnavn);
                if (stopp == null)
                {
                    stopp = new Stopp()
                    {
                        Navn = stoppnavn
                    };
                    context.Stopp.Add(stopp);
                }

                // Genererer tilfeldig tall mellom 35 og 45
                Random rInt         = new Random();
                int    tilfeldigTid = rInt.Next(35, 45);

                // Nytt instans av RuteStopp
                var ruteStopp = new RuteStopp()
                {
                    StoppNummer           = stoppNummer,
                    MinutterTilNesteStopp = tilfeldigTid,
                    Stopp = stopp,
                    Rute  = rute
                };

                // Nytt instans av RuteStopp i datbasen
                context.RuteStopp.Add(ruteStopp);
                stoppNummer++;
            }

            context.SaveChanges();
        }