public ActionResult Create(CandidatViewModel CVM, HttpPostedFileBase file)
        {
            // TODO: Add insert logic here
            Candidat c = new Candidat {
                CIN      = CVM.CIN,
                Email    = CVM.Email,
                Nom      = CVM.Nom,
                Prenom   = CVM.Prenom,
                Password = CVM.Password,
                Image    = file.FileName
            };

            CS.Add(c);
            CS.Commit();

            var fileName = "";

            if (file.ContentLength > 0)
            {
                var path = Path.Combine(Server.MapPath("~/Content/Upload/"), file.FileName);
                file.SaveAs(path);
            }

            return(RedirectToAction("Index", "Formation", new { id = c.IdCandidat }));
        }
        public HttpResponseMessage Post(HttpRequestMessage request, CandidatViewModel model)
        {
            return(CreateHttpResponse(request, () =>
            {
                if (!ModelState.IsValid)
                {
                    return request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
                }
                var candidat = MakeModel(model);
                _candidatsRepository.Add(candidat);
                _unitOfWork.Commit();


                return request.CreateResponse(HttpStatusCode.Created, Mapper.Map <CandidatViewModel>(candidat));
            }));
        }
 // Helpers methods
 private Candidat MakeModel(CandidatViewModel vm)
 {
     return(new Candidat
     {
         Adresse = vm.Adresse,
         Avatar = vm.Avatar,
         Civilite = vm.Civilite,
         Cv = vm.Cv,
         Email = vm.Email,
         Id = vm.Id,
         Naissance = vm.Naissance,
         Nom = vm.Nom,
         Password = vm.Password,
         Prenom = vm.Prenom,
         RefVille = vm.RefVille,
         Telephone = vm.Telephone
     });
 }
        public HttpResponseMessage Put(HttpRequestMessage request, int id, CandidatViewModel model)
        {
            return(CreateHttpResponse(request, () =>
            {
                if (!ModelState.IsValid)
                {
                    return request.CreateErrorResponse(HttpStatusCode.BadRequest, ModelState);
                }

                var candidat = _candidatsRepository.GetById(id);
                if (candidat != null)
                {
                    model.Id = id;
                    candidat = MakeModel(model);

                    _candidatsRepository.Update(candidat);
                    _unitOfWork.Commit();

                    return request.CreateResponse(HttpStatusCode.OK, Mapper.Map <CandidatViewModel>(candidat));
                }
                return request.CreateErrorResponse(HttpStatusCode.NoContent, "Pas de candidat pour cette requete !");
            }));
        }