public bool UppdateraLekplats(LekplatsFullständigData inputLekplats) { using (DatabasLekplatserEntities db = new DatabasLekplatserEntities()) { //Det måste finnas minst en lekutrustning och en tillgänglighet if (inputLekplats.lekutrustning?.Length > 0 || inputLekplats.tillgänglighet?.Length > 0) { try { Lekplatser uppdateraLekplats = db.Lekplatser.Find(inputLekplats.lekplatsId); uppdateraLekplats.LekplatsId = inputLekplats.lekplatsId; uppdateraLekplats.Namn = inputLekplats.namn; uppdateraLekplats.Adress = inputLekplats.adress; uppdateraLekplats.Beskrivning = inputLekplats.beskrivning; uppdateraLekplats.MinÅlderMålgrupp = (byte)inputLekplats.målgrupp[0]; uppdateraLekplats.MaxÅlderMålgrupp = (byte)inputLekplats.målgrupp[1]; uppdateraLekplats.Områden = db.Områden.SingleOrDefault((a => a.Namn == inputLekplats.område)); db.Lekutrustning.RemoveRange(db.Lekutrustning.Where(a => a.FK_Lekplatser_LekplatsId == uppdateraLekplats.LekplatsId)); db.Tillgänglighet.RemoveRange(db.Tillgänglighet.Where(a => a.FK_Lekplatser_LekplatsId == uppdateraLekplats.LekplatsId)); for (int i = 0; i < inputLekplats.lekutrustning.Length; i++) { Lekutrustning uppdateradLekutrustning = new Lekutrustning { Ordning = i + 1, Beskrivning = inputLekplats.lekutrustning[i] }; uppdateraLekplats.Lekutrustning.Add(uppdateradLekutrustning); } for (int i = 0; i < inputLekplats.tillgänglighet.Length; i++) { Tillgänglighet uppdateradTillgänglighet = new Tillgänglighet { Ordning = i + 1, Beskrivning = inputLekplats.tillgänglighet[i] }; uppdateraLekplats.Tillgänglighet.Add(uppdateradTillgänglighet); } db.SaveChanges(); return(true); } catch { return(false); } } else { return(false); } } }
public bool SkapaLekplats(LekplatsData inputLekplats) { using (DatabasLekplatserEntities db = new DatabasLekplatserEntities()) { //Det måste finnas minst en lekutrustning och en tillgänglighet if (inputLekplats.lekutrustning?.Length > 0 || inputLekplats.tillgänglighet?.Length > 0) { try { Lekplatser dbLekplats = new Lekplatser() { Namn = inputLekplats.namn, Adress = inputLekplats.adress, Beskrivning = inputLekplats.beskrivning, Områden = db.Områden.SingleOrDefault(p => p.Namn == inputLekplats.område), MinÅlderMålgrupp = (byte)inputLekplats.målgrupp[0], MaxÅlderMålgrupp = (byte)inputLekplats.målgrupp[1], }; for (int i = 0; i < inputLekplats.lekutrustning.Length; i++) { Lekutrustning nyLekutrustning = new Lekutrustning { Ordning = i + 1, Beskrivning = inputLekplats.lekutrustning[i] }; dbLekplats.Lekutrustning.Add(nyLekutrustning); } for (int i = 0; i < inputLekplats.tillgänglighet.Length; i++) { Tillgänglighet nyTillgänglighet = new Tillgänglighet { Ordning = i + 1, Beskrivning = inputLekplats.tillgänglighet[i] }; dbLekplats.Tillgänglighet.Add(nyTillgänglighet); } db.Lekplatser.Add(dbLekplats); db.SaveChanges(); return(true); } catch { return(false); } } else { return(false); } } }