예제 #1
0
 private void updateSetting(Setting setting)
 {
     using (BetBudContext db = new BetBudContext()) {
         db.Entry(setting).State = EntityState.Modified;
         db.SaveChanges();
     }
 }
예제 #2
0
 public void UpdateOrInsetReservedName(ReservedNames reserved)
 {
     using (BetBudContext db = new BetBudContext()) {
         db.Entry(reserved).State = reserved.ReservedNameId > 0 ? EntityState.Modified : EntityState.Added;
         db.SaveChanges();
     }
 }
예제 #3
0
        private void GemSæson(Sæson sæson, Setting setting)
        {
            using (BetBudContext db = new BetBudContext()) {
                using (DbContextTransaction tranction = db.Database.BeginTransaction()) {
                    try {
                        foreach (SæsonBruger sæsonBruger in sæson.SæsonBrugere)
                        {
                            db.Entry(sæsonBruger.Bruger).State = EntityState.Modified;
                        }
                        db.Entry(setting).State         = EntityState.Modified;
                        db.Entry(sæson.SæsonInfo).State = EntityState.Unchanged;
                        db.Sæsoner.Add(sæson);
                        db.AktuelSæsonInfo.Add(new SæsonBeskrivelse {
                            Beskrivelse = "sæson!"
                        });

                        db.SaveChanges();
                        tranction.Commit();
                    }
                    catch (Exception e) {
                        tranction.Rollback();
                        Debug.WriteLine(e);
                    }
                }
            }
        }
예제 #4
0
 public void DeleteReservedName(ReservedNames reserved)
 {
     using (BetBudContext db = new BetBudContext()) {
         db.Entry(reserved).State = EntityState.Deleted;
         db.SaveChanges();
     }
 }
예제 #5
0
 public void opdaterBruger(Bruger bruger)
 {
     using (BetBudContext db = new BetBudContext()) {
         db.Entry(bruger).State = EntityState.Modified;
         db.SaveChanges();
     }
 }
예제 #6
0
 public void CreateMultipleReservedNames(IEnumerable <ReservedNames> listofReservedNames)
 {
     using (BetBudContext db = new BetBudContext()) {
         db.ReservedNames.AddRange(listofReservedNames);
         db.SaveChanges();
     }
 }
예제 #7
0
 public void CreateReservedName(ReservedNames reserved)
 {
     using (BetBudContext db = new BetBudContext()) {
         db.ReservedNames.Add(reserved);
         db.SaveChanges();
     }
 }
예제 #8
0
        // Metode til at bekræfte kuponen. Der oprettes en ny forbindelse til databasen via BetBudContext klassen.
        // For hver kamp der er i listen delKampe, sendes ind i variablen kamp.
        // Unchanged betyder at objektet kamp ikke bliver ændret i Databasen,
        // Samme sker med kupon.bruger. Kuponen bliver tilføjet og gemt.
        public bool BekræftKupon(Kupon kupon)
        {
            kupon.CreateDateTime = DateTime.Now;
            if (kupon.delKampe.Count > 0)
            {
                using (BetBudContext db = new BetBudContext()) {
                    using (DbContextTransaction transaction = db.Database.BeginTransaction(IsolationLevel.ReadCommitted)
                           ) {
                        try {
                            foreach (DelKamp kamp in kupon.delKampe)
                            {
                                db.Entry(kamp.Kampe).State = EntityState.Unchanged;
                            }
                            db.Entry(kupon.Bruger).State = EntityState.Modified;
                            Setting setting = db.Settings.FirstOrDefault(x => x.name == "Sæson");
                            kupon.SæsonId = int.Parse(setting.value);
                            db.Kuponer.Add(kupon);
                            db.SaveChanges();

                            transaction.Commit();
                            return(true);
                        }
                        catch (Exception) {
                            transaction.Rollback();
                        }
                    }
                }
            }
            return(false);
        }
예제 #9
0
 public void sletBruger(int id)
 {
     using (BetBudContext db = new BetBudContext()) {
         Bruger bruger = new Bruger();
         bruger.BrugerId        = id;
         db.Entry(bruger).State = EntityState.Deleted;
         db.SaveChanges();
     }
 }
예제 #10
0
        public void SubtractPoints(double amount, string navn, Bruger b)
        {
            using (BetBudContext db = new BetBudContext()) {
                b = GetBrugerEfterBrugerNavn(navn);

                b.Point -= amount;

                db.Entry(b).State = EntityState.Modified;
                db.SaveChanges();
            }
        }
예제 #11
0
 public SæsonBeskrivelse OpdaterSæsonBeskrivelse(string beskrivelse, string start, string s**t)
 {
     using (BetBudContext db = new BetBudContext()) {
         SæsonBeskrivelse sb = HentNuværendeSæson();
         sb.Beskrivelse     = beskrivelse;
         sb.SlutDato        = s**t;
         sb.StartDato       = start;
         db.Entry(sb).State = EntityState.Modified;
         db.SaveChanges();
     }
     return(HentNuværendeSæson());
 }
예제 #12
0
 public void CheckAndRemoveExistName()
 {
     using (BetBudContext db = new BetBudContext()) {
         List <ReservedNames> toRemove =
             db.ReservedNames.Where(y => DbFunctions.AddMinutes(y.Time, 5) < DateTime.Now).ToList();
         foreach (ReservedNames reservedNamese in toRemove)
         {
             db.Entry(reservedNamese).State = EntityState.Deleted;
         }
         db.SaveChanges();
     }
 }
예제 #13
0
 /// <summary>
 ///     Denne metode står for at oprette serveren
 /// </summary>
 /// <param name="serverName">Serverens navn</param>
 /// <param name="serverPort">Serverens port</param>
 /// <param name="bufferSize">Serverens buffer størrelse</param>
 public void OpretServer(string serverName, int serverPort, int bufferSize)
 {
     //Her kaldes databasens context
     using (BetBudContext db = new BetBudContext()) {
         //Objektet objekt initialiseres og forskellige variabler assignes til Aserverens properties
         ChatServer = new AServer {
             ServerName = serverName, ServerPort = serverPort, BufferSize = bufferSize
         };
         //I dette kald åbnes contexten og chatserver objektet indsættes og dens state sættes til at være indsat, dette medfører at entity indsætter objektet til at være tilføjet i den cachede version af databasen
         db.Entry(ChatServer).State = EntityState.Added;
         //Her gemmes den cachede version af databasen ned til den rigtige version.
         db.SaveChanges();
     }
 }
예제 #14
0
        /// <summary>
        ///     Denne metode står for at slette serveren
        /// </summary>
        /// <param name="serverId">Serverens id</param>
        public void DeleteServer(int serverId)
        {
            //Contexten kaldes i et using statement således den disposes senere
            using (BetBudContext db = new BetBudContext()) {
                //Der oprettes en server instans og iden sættes fra parameter listen
                AServer aServ = new AServer {
                    AServerId = serverId
                };

                //Der laves en statement hvor objektet bliver sat til at blive slettet
                db.Entry(aServ).State = EntityState.Deleted;
                //Ændringerne gemmes i databasen
                db.SaveChanges();
            }
        }
예제 #15
0
 private void storeNewKampe(Kamp[] kamp)
 {
     using (BetBudContext db = new BetBudContext()) {
         List <Kamp> list    = kamp.ToList();
         List <Kamp> onlyNew = new List <Kamp>();
         foreach (Kamp k in list)
         {
             if (db.Kampe.Find(k.KampId) == null)
             {
                 onlyNew.Add(k);
             }
         }
         kamp = onlyNew.ToArray();
         db.Kampe.AddRange(kamp);
         db.SaveChanges();
     }
 }
예제 #16
0
        /// <summary>
        ///     Denne metode står for at opdatere serverens information
        /// </summary>
        /// <param name="serverId">Serverens id nummer</param>
        /// <param name="serverName">Serverens navn</param>
        /// <param name="serverPort">Serverens port</param>
        /// <param name="bufferSize">Serverens buffer størrelse</param>
        public void UpdateServer(int serverId, string serverName, int serverPort, int bufferSize)
        {
            //Contexten åbnes i et using statement således at forbindelsen automatisk bliver deposed sernere
            using (BetBudContext db = new BetBudContext()) {
                //Der kaldes en metode som finder en specifik server som skal opdateres, den assignes til lokal variablen server
                AServer server = FindSpecificAServer(serverId);

                //De forskellige opdateringer som der ønskes bliver assignet på objektet.
                server.ServerName = serverName;
                server.ServerPort = serverPort;
                server.BufferSize = bufferSize;

                //Contexten opretter en entry med objektet server hvor den ændrer serverens stadie til at være opdateret.
                db.Entry(server).State = EntityState.Modified;
                //Contexten gemmer statementen.
                db.SaveChanges();
            }
        }
예제 #17
0
        private void UpdateKamp()
        {
            IEnumerable <Kamp> kampList = new List <Kamp>();

            using (BetBudContext db = new BetBudContext()) {
                kampList =
                    db.Kampe.Where(x => x.KampStart < DateTime.Now && !x.Vundet1 && !x.Vundet2 && !x.VundetX).ToList();
            }

            if (kampList.Any())
            {
                foreach (Kamp kamp in kampList)
                {
                    Debug.WriteLine("do game update");
                    string   lastApiDate = "http://odds.mukuduk.dk/?kampId=" + kamp.KampId;
                    XElement oddsUrl     = XElement.Load(lastApiDate);
                    Kamp     kampe       =
                        oddsUrl.Elements("kamp")
                        .Select(
                            p =>
                            new Kamp {
                        HoldVsHold = p.Element("text").Value,
                        Odds1      = double.Parse(p.Element("odds1").Value),
                        OddsX      = double.Parse(p.Element("oddsx").Value),
                        Odds2      = double.Parse(p.Element("odds2").Value),
                        KampStart  = DateTime.Parse(p.Element("kampStart").Value),
                        Aflyst     = bool.Parse(p.Element("aflyst").Value),
                        Vundet1    = bool.Parse(p.Element("vundet1").Value),
                        VundetX    = bool.Parse(p.Element("vundetx").Value),
                        Vundet2    = bool.Parse(p.Element("vundet2").Value),
                        KampId     = int.Parse(p.Element("KampId").Value)
                    })
                        .First();
                    kamp.Vundet1 = kampe.Vundet1;
                    kamp.VundetX = kampe.VundetX;
                    kamp.Vundet2 = kampe.Vundet2;
                    using (BetBudContext db = new BetBudContext()) {
                        Debug.WriteLine("save Game");
                        db.Entry(kamp).State = EntityState.Modified;
                        db.SaveChanges();
                    }
                }
            }
        }
예제 #18
0
        private void GivPoint(Kupon kupon)
        {
            kupon.Bruger.Point += kupon.MuligGevist();
            kupon.Kontrolleret  = true;

            using (BetBudContext db = new BetBudContext()) {
                using (DbContextTransaction transaction = db.Database.BeginTransaction(IsolationLevel.ReadCommitted)) {
                    try {
                        Debug.WriteLine("gem");
                        db.Entry(kupon).State        = EntityState.Modified;
                        db.Entry(kupon.Bruger).State = EntityState.Modified;
                        db.SaveChanges();
                        transaction.Commit();
                    }
                    catch (Exception e) {
                        Debug.WriteLine(e.Message);
                        transaction.Rollback();
                    }
                }
            }
        }
예제 #19
0
        public void opretBruger(Bruger bruger)
        {
            //Email constraints
            Match matchEmail = new Regex(@"^([\w\.\-]+)@([\w\-]+)((\.(\w){2,3})+)$").Match(bruger.Email);

            //Number constraints
            Match matchName = new Regex(@"^[a-åA-Å' '-'\s]{1,40}$").Match(bruger.Navn);

            bruger.Password = GenerateSaltedHash(bruger.Password);

            bruger.Point = 10000;
            //Brugernavn constraints 1-24 karaktere, Skal starte med a-z, Må indeholde .,-_, må ikke ende på .,-_
            Match matchBruger = new Regex(@"^[a-zA-Z]{1}[a-zA-Z0-9\._\-]{0,23}[^.-]$").Match(bruger.BrugerNavn);
            //var matchBrugernavn = new Regex(@"(\.|\-|\._|\-_)$").Match(bruger.BrugerNavn);
            Bruger b = GetBrugerEfterBrugerNavn(bruger.BrugerNavn);

            if (matchEmail.Success && matchName.Success && matchBruger.Success && b == null)
            {
                using (BetBudContext db = new BetBudContext()) {
                    db.Brugere.Add(bruger);
                    db.SaveChanges();
                }
            }
        }