Ejemplo n.º 1
0
 public IHttpActionResult PostProfession(ProfessionDTO profession)
 {
     if (profession == null)
     {
         return(BadRequest(ModelState));
     }
     try
     {
         Profession prof       = profession.FromDTO();
         UnitOfWork unitOfWork = new UnitOfWork(factory);
         prof.Id = prof.NewId(unitOfWork);
         unitOfWork.ProfessionsRepository.Insert(prof);
         unitOfWork.Save();
         ProfessionDTO dto = unitOfWork.ProfessionsRepository
                             .Get(d => d.Id == prof.Id, includeProperties: "Country")
                             .FirstOrDefault().ToDTO();
         return(CreatedAtRoute("GetProfession", new { id = dto.Id }, dto));
     }
     catch (NotFoundException nfe)
     {
         return(NotFound());
     }
     catch (ConflictException ce)
     {
         return(Conflict());
     }
     catch (Exception e)
     {
         return(BadRequest(e.Message));
     }
 }
Ejemplo n.º 2
0
 public IHttpActionResult PutProfession(int id, ProfessionDTO profession)
 {
     if (profession == null || !ModelState.IsValid)
     {
         return(BadRequest(ModelState));
     }
     if (id != profession.Id)
     {
         return(BadRequest());
     }
     try
     {
         Profession prof       = profession.FromDTO();
         UnitOfWork unitOfWork = new UnitOfWork(factory);
         unitOfWork.ProfessionsRepository.Update(prof);
         unitOfWork.Save();
         ProfessionDTO dto = unitOfWork.ProfessionsRepository
                             .Get(d => d.Id == id, includeProperties: "Country")
                             .FirstOrDefault().ToDTO();
         return(Ok(dto));
     }
     catch (NotFoundException nfe)
     {
         return(NotFound());
     }
     catch (ConflictException ce)
     {
         return(Conflict());
     }
     catch (Exception e)
     {
         return(BadRequest(e.Message));
     }
 }