Пример #1
0
 public bool SettInnNyKunde(Kunde nykunde)
 {
     var db = new OnlineStoreEntities();
       // se om kunden eksitere
       // Kunde funnetKunde = db.Kunder.FirstOrDefault(k => k.Navn == NyProdukt.navn);
       using (var dbTransaksjon = db.Database.BeginTransaction())
       {
     var kunde = new Kunde()
     {   // en annen måte å initsiere attributter i en klasse når den
     //instansieres (må ikke ha konstruktør for å gjøre dette)
       Navn = nykunde.Navn,
       Adresse = nykunde.Adresse,
       Epost = nykunde.Epost,
       Password = nykunde.Password
     };
     try
     {
       db.Kunder.Add(nykunde);
       db.SaveChanges();
       dbTransaksjon.Commit();
       return true;
     }
     catch (Exception feil)
     {
       dbTransaksjon.Rollback();
       return false;
     }
       }
 }
Пример #2
0
        public bool settInnBestillng(Produkt bestiltProdukt)
        {
            int kundeID; // brukes til enten eksisterende KId eller den nye KId

            var db = new OnlineStoreEntities();
              // se om kunden eksitere
              Kunde funnetKunde = db.Kunder.FirstOrDefault(k => k.Navn == bestiltProdukt.navn);

            using (var dbTransaksjon = db.Database.BeginTransaction())
            {
                if (funnetKunde == null)
                {
                    // opprett kunder obj
                    var kunde = new Kunde();
                    kunde.Navn = bestiltProdukt.navn;
                    kunde.Adresse = bestiltProdukt.adresse;
                    kunde.Telefonnr = bestiltProdukt.telefonnr;
                    try
                    {
                        db.Kunder.Add(kunde);
                        db.SaveChanges();
                        kundeID = kunde.KId; // nå har kunde.KId fått riktig verdi (den nye ID)
                    }
                    catch (Exception feil)
                    {
                        dbTransaksjon.Rollback();
                        return false;
                    }
                }
                else
                {
                    kundeID = funnetKunde.KId;
                }

                // registrer bestillingen på kunden, enten ny eller gammel
                var bestilling = new Bestilling()
                {   // en annen måte å initsiere attributter i en klasse når den
                  //instansieres (må ikke ha konstruktør for å gjøre dette)
                    KId = kundeID,
                    Antall = bestiltProdukt.antall,
                    ProduktNavn = bestiltProdukt.ProduktType,
                    Pris = bestiltProdukt.Pris
                };

                try
                {
                    db.Bestillinger.Add(bestilling);
                    db.SaveChanges();
                    dbTransaksjon.Commit();
                    return true;
                }
                catch (Exception feil)
                {
                    dbTransaksjon.Rollback();
                    return false;
                }
            }
        }