public async Task <IActionResult> PutFavoriteCanvases([FromRoute] int id, [FromBody] FavoriteCanvases favoriteCanvases) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != favoriteCanvases.Id) { return(BadRequest()); } _context.Entry(favoriteCanvases).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!FavoriteCanvasesExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <IActionResult> PostFavoriteCanvases([FromBody] FavoriteCanvases favoriteCanvases) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var canvas = _context.FavoriteCanvases.Where(c => c.UserId == favoriteCanvases.UserId && c.CanvasId == favoriteCanvases.CanvasId).Count(); if (canvas == 0) { _context.FavoriteCanvases.Add(favoriteCanvases); await _context.SaveChangesAsync(); return(CreatedAtAction("GetFavoriteCanvases", new { id = favoriteCanvases.Id }, favoriteCanvases)); } return(Ok()); }
public async Task <IActionResult> DeleteFavoriteCanvases([FromBody] FavoriteCanvases favoriteCanvases) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } //var canvas = _context.FavoriteCanvases.Where(c => c.UserId == favoriteCanvases.UserId && c.CanvasId == favoriteCanvases.CanvasId).Count(); var canvas = await _context.FavoriteCanvases.SingleOrDefaultAsync(m => m.UserId == favoriteCanvases.UserId && m.CanvasId == favoriteCanvases.CanvasId); if (canvas == null) { return(NotFound()); } _context.FavoriteCanvases.Remove(canvas); await _context.SaveChangesAsync(); return(Ok(canvas)); }