public IHttpActionResult PostAsistir(Asistir asistir) { String mensaje = ""; if (!ModelState.IsValid) { return(BadRequest(ModelState)); } db.Asistir.Add(asistir); try { db.SaveChanges(); } catch (DbUpdateException ex) { //if (AsistirExists(asistir.idSocio)) //{ // return Conflict(); //} //else //{ // throw; //} SqlException sqlException = (SqlException)ex.InnerException.InnerException; mensaje = sqlException.Number + " - " + sqlException.Message; } return(CreatedAtRoute("DefaultApi", new { id = asistir.idSocio }, asistir)); }
public IHttpActionResult updateAsistir(int idSocio, short idEvento, Asistir asistir) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (idSocio != asistir.idSocio && idEvento != asistir.idEvento) { return(BadRequest()); } db.Entry(asistir).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!asistirExiste(idSocio, idEvento)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }
public IHttpActionResult DeleteAsistir(int idSocio, short idEvento) { // Modificamos la búsqueda del asistir, la cual por defecto la buscaría por una ID, // pero como no la pk son dos ids (socio y evento), se ha tenido que cambair //Asistir asistir = db.Asistir.Find(id); Asistir asistir = (from a in db.Asistir where a.idSocio == idSocio && a.idEvento == idEvento select a).FirstOrDefault(); if (asistir == null) { return(NotFound()); } db.Asistir.Remove(asistir); db.SaveChanges(); return(Ok(asistir)); }