public void RetirerTravail(int p_index) { if (p_index < 1) { throw new ArgumentOutOfRangeException(nameof(p_index)); } Travail travailASupprimer = ChercherTravailParID(p_index); if (travailASupprimer is null) { throw new ArgumentNullException(nameof(p_index)); } else { DepotSolutionSQLServeur depotSolution = new DepotSolutionSQLServeur(this.m_appDbContext); DepotCorrectionsSQLServeur depotCorrection = new DepotCorrectionsSQLServeur(this.m_appDbContext); List <Solution> listeSolutions = depotSolution.ChercherSolutionParTravailID(p_index); List <Correction> listeCorrections = new List <Correction>(); if (listeSolutions != null) { foreach (Solution solution in listeSolutions) { listeCorrections.AddRange(depotCorrection.ChercherCorrectionsParSolutionID(solution.SolutionID)); } if (listeCorrections != null) { foreach (Correction correction in listeCorrections) { CorrectionDTO correctionDTO = new CorrectionDTO(correction); this.m_appDbContext.Correction.Remove(correctionDTO); } } foreach (Solution solution in listeSolutions) { this.m_appDbContext.Solution.Remove(new SolutionDTO(solution)); } } this.m_appDbContext.Travail.Remove(new TravailDTO(travailASupprimer)); this.m_appDbContext.SaveChanges(); } }
public void FinaliserCorrection(int p_solutionID, string p_etudiantID) { CorrectionDTO correction = this.m_appDbContext.Correction.Where(c => c.Solution_id == p_solutionID && c.Etudiant_id == p_etudiantID).FirstOrDefault(); if (correction != null) { if (correction.Finaliser) { correction.Finaliser = false; } else { correction.Finaliser = true; } this.m_appDbContext.Correction.Update(correction); this.m_appDbContext.SaveChanges(); } }