//public IAccountRepository Accounts
 //{
 //    get
 //    {
 //        if (accounts == null)
 //            accounts = new AccountRepository(dbContext);
 //        return accounts;
 //    }
 //}
 #endregion
 #region Utility
 public int SaveChanges()
 {
     return(dbContext.SaveChanges());
 }
示例#2
0
        public bool Registrer(KundeRegistreringViewModel innKunde)
        {
            try
            {
                using (var db = new DB())
                {
                    byte[] salt = LagSalt();
                    byte[] hash = LagHash(innKunde.Passord, salt);

                    var SjekkEpost = Finn(innKunde.Epost);

                    if (SjekkEpost == null)
                    {
                        var nyKunde = new DBKunde()
                        {
                            Fornavn     = innKunde.Fornavn,
                            Etternavn   = innKunde.Etternavn,
                            Passord     = LagHash(innKunde.Passord, salt),
                            Adresse     = innKunde.Adresse,
                            Fodselsdag  = innKunde.Fodselsdag,
                            Epost       = innKunde.Epost,
                            Mobilnummer = innKunde.Mobilnummer,
                            ErAdmin     = false,
                            Salt        = salt
                        };

                        var postSted = db.Poststeder.Find(innKunde.Postnummer);

                        if (postSted == null)
                        {
                            var poststed = new DBPoststed();
                            poststed.Postnr   = innKunde.Postnummer;
                            poststed.Poststed = innKunde.Poststed;

                            nyKunde.Poststed = poststed;
                        }
                        else
                        {
                            nyKunde.Poststed = postSted;
                        }
                        var endring = new DBEndring()
                        {
                            Tidspunkt        = DateTime.Now,
                            EndringOperasjon = "Ny kunde: ",
                            endring          = $"{nyKunde.Fornavn} {nyKunde.Etternavn}, {nyKunde.Adresse}, {nyKunde.Epost}, {nyKunde.Poststed.Poststed}, {nyKunde.Poststed.Postnr}"
                        };
                        db.Endringer.Add(endring);
                        db.Kunder.Add(nyKunde);
                        db.SaveChanges();
                        return(true);
                    }
                    else
                    {
                        return(false);
                    }
                }
            }
            catch (Exception e)
            {
                DBLog.ErrorToFile("Feil oppstått når kunden skulle registreres", "DBKunde:Registrer", e);
                return(false);
            }
        }