public bool SaveResults(List <ResultDA> results) { bool success = false; try { foreach (ResultDA result in results) { ResultDA existResult = new ResultDA(); //check if result is valid existing result if (result.ResultID > 0) { result.Event = _db.Events.SingleOrDefault(e => e.EventName == result.EventName); result.EventID = result.Event.EventID; result.Athlete = _db.Athletes.SingleOrDefault(a => a.AthleteName == result.AthleteName); result.AthleteID = result.Athlete.AthleteID; //get existing result from database existResult = _db.Results.SingleOrDefault(a => a.ResultID == result.ResultID); //update existing result _db.Entry(existResult).CurrentValues.SetValues(result); //flag result as changed _db.Entry(existResult).State = System.Data.Entity.EntityState.Modified; } else if (result.ResultID == 0) { //get athlete object associated with result if (result.Athlete == null) { result.Athlete = _db.Athletes.SingleOrDefault(a => a.AthleteID == result.AthleteID); } //get event object associated with result if (result.Event == null) { result.Event = _db.Events.SingleOrDefault(e => e.EventID == result.EventID); } _db.Results.Add(result); } } //single call to database to save all changes _db.SaveChanges(); success = true; } catch (Exception e) { throw (new Exception("Error occured in ResultService.SaveResults(results)")); } return(success); }
public void TestResultDAtoVM() { ResultDA source = new ResultDA { ResultID = 1, AthleteID = 1, Athlete = new AthleteDA(), EventID = 1, Event = new EventDA(), DateOfResult = DateTime.Now, Result = 11.3, IsDeleted = false }; ResultVM dest = new ResultVM(); Assert.AreNotEqual(11.3, dest.Result); Mapper.Map(source, dest); Assert.AreEqual(11.3, dest.Result); }
public bool DeleteANewResultAndSendToDA(Result aResult) { if (aResult.ID == " ") { this.Message = "ID is Incorrect"; return(false); } else { ResultDA ResultDAOBJ = new ResultDA(); bool result = ResultDAOBJ.DeleteANewResultToDB(aResult); return(result); } }
//Get: Details public ViewResult Details(int resultID) { ResultVM result = new ResultVM(); ResultDA resultDA = new ResultDA(); try { resultDA = DataAccessServiceController.ResultService.GetResultByID(resultID); Mapper.Map(resultDA, result); return(View("Details", result)); } catch (Exception e) { throw (new Exception("Error occured in ResultsController.Details(resultID)")); } }
public ResultDA GetResultByID(int resultID) { List <ResultDA> resultSource = new List <ResultDA>(); ResultDA result = new ResultDA(); try { resultSource = _db.Results.Where(r => r.ResultID == resultID).ToList(); result = resultSource.First(); } catch (Exception e) { throw (new Exception("Error occured in AthleteService.GetResultByID(resultID)")); } return(result); }
public ActionResult Edit(ResultVM resultToEdit) { ResultDA resultDA = new ResultDA(); List <ResultDA> resultList = new List <ResultDA>(); Mapper.Map(resultToEdit, resultDA); resultList.Add(resultDA); bool success = DataAccessServiceController.ResultService.SaveResults(resultList); if (success == true) { return(RedirectToAction("Success", "Application", new { area = "" })); } else { return(RedirectToAction("Fail", "Application", new { area = "" })); } }
//GET: Edit public ViewResult Edit(int resultID) { ResultVM result = new ResultVM(); ResultDA resultDA = new ResultDA(); try { resultDA = DataAccessServiceController.ResultService.GetResultByID(resultID); Mapper.Map(resultDA, result); List <string> eventNames = new List <string>(); List <EventDA> events = DataAccessServiceController.EventService.GetEvents(); foreach (var e in events) { eventNames.Add(e.EventName); } List <string> athleteNames = new List <string>(); List <AthleteDA> athletes = DataAccessServiceController.AthleteService.GetAthletes(-1); foreach (var a in athletes) { athleteNames.Add(a.AthleteName); } athleteNames.Sort(); ViewData["eventNames"] = eventNames; ViewData["athleteNames"] = athleteNames; } catch (Exception e) { throw (new Exception("Error occured in ResultsController.Edit(resultID)")); } return(View("Edit", result)); }
public ActionResult Create(ResultVM createdResult) { try { ResultDA resultDA = new ResultDA(); List <ResultDA> resultList = new List <ResultDA>(); List <EventDA> events = DataAccessServiceController.EventService.GetEvents(); EventDA e = events.Find(x => x.EventName == createdResult.EventName); List <AthleteDA> athletes = DataAccessServiceController.AthleteService.GetAthletes(-1); AthleteDA a = athletes.Find(x => x.AthleteName == createdResult.AthleteName); //send event and athlete ids to created result viewmodel depending on names chosen createdResult.EventID = e.EventID; createdResult.AthleteID = a.AthleteID; Mapper.Map(createdResult, resultDA); resultList.Add(resultDA); bool success = DataAccessServiceController.ResultService.SaveResults(resultList); if (success == true) { return(RedirectToAction("Success", "Application", new { area = "" })); } else { return(RedirectToAction("Fail", "Application", new { area = "" })); } } catch (Exception e) { throw (new Exception("Error occured in ResultsController.Create(result)")); } }
public bool UpdateANewResultAndSendToDA(Result aResult) { if (aResult.ID == " ") { this.Message = "ID is Incorrect"; return(false); } else { if (aResult.Name == "") { this.Message = "Name is Incorrect"; return(false); } else { if (aResult.Depertment == " ") { this.Message = "Depertment is overload"; return(false); } else { if (aResult.CourseTitle == " ") { this.Message = "CourseTitle is incorrect"; return(false); } else { if (aResult.CourseCode == " ") { this.Message = "CourseCode is Incorrect"; return(false); } else { if (aResult.Gread == " ") { this.Message = "Gread is Invalid"; return(false); } else { if (aResult.SGPA < 0 || aResult.SGPA > 4) { this.Message = "SGPA is Overlaped"; return(false); } else { ResultDA ResultDAOBJ = new ResultDA(); bool result = ResultDAOBJ.UpdateANewResultToDB(aResult); return(result); } } } } } } } }