public ActionResult Edit(int idEtudiant, int idCours, PresenceCours EditPresCours)
        {
            try
            {
                // TODO: Add update logic here
                if (ModelState.IsValid)
                {
                    PresenceCours presCours = (from pc in DB.PresenceCours
                                               where pc.EtudiantId == idEtudiant && pc.CoursId == idCours
                                               select pc).First();

                    presCours.Motif   = EditPresCours.Motif;
                    presCours.Absence = EditPresCours.Absence;

                    DB.SaveChanges();
                    return(RedirectToAction("Index", "Enseignant"));
                }
                else
                {
                    return(View());
                }
            }
            catch
            {
                return(View());
            }
        }
        //
        // GET: /PresenceCours/Delete/5
        /// <summary>
        /// Affichage de la page de suppression d'une presence au cours
        /// </summary>
        /// <param name="idEtudiant">L'id de l'etudiant</param>
        /// <param name="idCours">L'id du cours</param>
        /// <returns>La page de presence au cours</returns>
        public ActionResult Delete(int idEtudiant, int idCours)
        {
            PresenceCours presCours = (from pc in DB.PresenceCours
                                       where pc.EtudiantId == idEtudiant && pc.CoursId == idCours
                                       select pc).First();

            return(View(presCours));
        }
        public ActionResult Delete(int idEtudiant, int idCours, FormCollection collection)
        {
            try
            {
                // TODO: Add delete logic here
                PresenceCours presCours = (from pc in DB.PresenceCours
                                           where pc.EtudiantId == idEtudiant && pc.CoursId == idCours
                                           select pc).First();

                DB.PresenceCours.Remove(presCours);

                DB.SaveChanges();

                return(RedirectToAction("Index"));
            }
            catch
            {
                return(View());
            }
        }
        public ActionResult Create(PresenceCours NouvPresCours)
        {
            try
            {
                // TODO: Add insert logic here

                if (ModelState.IsValid)
                {
                    DB.PresenceCours.Add(NouvPresCours);

                    DB.SaveChanges();

                    return RedirectToAction("Index");
                }
                else
                {
                    return View();
                }
            }
            catch
            {
                return View();
            }
        }
        public ActionResult Create(PresenceCours NouvPresCours)
        {
            try
            {
                // TODO: Add insert logic here

                if (ModelState.IsValid)
                {
                    DB.PresenceCours.Add(NouvPresCours);

                    DB.SaveChanges();

                    return(RedirectToAction("Index"));
                }
                else
                {
                    return(View());
                }
            }
            catch
            {
                return(View());
            }
        }
        public ActionResult Inscription(PresenceCours NouvPresCours)
        {
            try
            {
                // TODO: Add insert logic here
                if (ModelState.IsValid)
                {
                    DB.PresenceCours.Add(NouvPresCours);

                    DB.SaveChanges();

                    return(RedirectToAction("Index"));
                }
                else
                {
                    return(View());
                }
            }
            catch (Exception e)
            {
                ModelState.AddModelError("", e.Message);
                return(View(NouvPresCours));
            }
        }
        public ActionResult Inscription(PresenceCours NouvPresCours)
        {
            try
            {
                // TODO: Add insert logic here
                if (ModelState.IsValid)
                {
                    DB.PresenceCours.Add(NouvPresCours);

                    DB.SaveChanges();

                    return RedirectToAction("Index");
                }
                else
                {
                    return View();
                }
            }
            catch
            {
                ModelState.AddModelError("", GestionEcole.Resources.Views.PresenceCours.Titles.ErrorMessageCoursInvalid );
                var Etudiant = (from et in DB.Etudiants
                                where et.Id == NouvPresCours.EtudiantId
                                select et).First();

                ViewBag.Etudiant = Etudiant;

                var matieres = DB.Matieres.ToList()
                    .OrderBy(et => et.Titre).ToList()
                    .Select(m => new SelectListItem { Value = m.MatiereId.ToString(), Text = m.Titre.ToString() });

                ViewBag.matieres = matieres;

                return View(new PresenceCours { EtudiantId = NouvPresCours.EtudiantId, Etudiant = Etudiant });
            }
        }
        public ActionResult Edit(int idEtudiant, int idCours, PresenceCours EditPresCours)
        {
            try
            {
                // TODO: Add update logic here
                if (ModelState.IsValid)
                {
                    PresenceCours presCours = (from pc in DB.PresenceCours
                                               where pc.EtudiantId == idEtudiant && pc.CoursId == idCours
                                               select pc).First();

                    presCours.Motif = EditPresCours.Motif;
                    presCours.Absence = EditPresCours.Absence;

                    DB.SaveChanges();
                    return RedirectToAction("Index","Enseignant");
                }
                else
                {
                    return View();
                }
            }
            catch
            {
                return View();
            }
        }
        public ActionResult Inscription(PresenceCours NouvPresCours)
        {
            try
            {
                // TODO: Add insert logic here
                if (ModelState.IsValid)
                {
                    DB.PresenceCours.Add(NouvPresCours);

                    DB.SaveChanges();

                    return RedirectToAction("Index");
                }
                else
                {
                    return View();
                }
            }
            catch (Exception e)
            {
                ModelState.AddModelError("", e.Message);
                return View(NouvPresCours);
            }
        }