public async Task <IHttpActionResult> PutMunition(string id) { Munition munition = await UpdateDataWithFile(); if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != munition.MunitionID) { return(BadRequest()); } if (munition.MunitionName == null || munition.MunitionName.Trim() == "") { return(BadRequest("Invalid Munition Name: " + munition.MunitionName)); } if (!IsValidMunitionRole(munition.MunitionRole)) { return(BadRequest("Invalid Munition Role: " + munition.MunitionRole)); } if (!IsValidMOS(munition.MunitionMOS1)) { return(BadRequest("Invalid MOS: " + munition.MunitionMOS1)); } if (!IsValidMOS(munition.MunitionMOS2)) { return(BadRequest("Invalid MOS: " + munition.MunitionMOS2)); } if (!IsValidMOS(munition.MunitionMOS3)) { return(BadRequest("Invalid MOS: " + munition.MunitionMOS3)); } munition.RemoveUrl(munition.GetType().GetProperties().Where(p => properties.Contains(p.Name)).ToArray(), this.Request); munition.LastUpdate = DateTime.Now; db.Entry(munition).State = EntityState.Modified; try { db.SaveChanges(); } catch (DbUpdateConcurrencyException) { if (!MunitionExists(id)) { return(NotFound()); } else { throw; } } return(StatusCode(HttpStatusCode.NoContent)); }