public async Task <IActionResult> PutSpeaker(int id, ConferenceDTO.Speaker input) { var speaker = await _db.FindAsync <Speaker>(id); if (speaker == null) { return(NotFound()); } speaker.Name = input.Name; speaker.WebSite = input.WebSite; speaker.Bio = input.Bio; #region Generated try block //if (id != speaker.ID) //{ // return BadRequest(); //} //_db.Entry(speaker).State = EntityState.Modified; //try //{ // await _db.SaveChangesAsync(); //} //catch (DbUpdateConcurrencyException) //{ // if (!SpeakerExists(id)) // { // return NotFound(); // } // else // { // throw; // } //} #endregion // TODO: Handle exceptions, e.g. concurrency await _db.SaveChangesAsync(); return(NoContent()); }
public async Task <ActionResult <ConferenceDTO.SpeakerResponse> > PostSpeaker(ConferenceDTO.Speaker input) { var speaker = new Speaker { Name = input.Name, WebSite = input.WebSite, Bio = input.Bio }; _db.Speakers.Add(speaker); await _db.SaveChangesAsync(); var result = speaker.MapSpeakerResponse(); return(CreatedAtAction(nameof(GetSpeaker), new { id = speaker.ID }, result)); }