public ActionResult Favorite(int?gifId) { if (gifId == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } var gif = _gifRepository.Get(gifId); var user = _userRepository.GetUser(User.Identity.Name); var existingFavorite = _favoriteRepository.CheckIfExists(user.Id, gif.Id); if (existingFavorite == null) { var newFavorite = new Favorite() { User = user, Gif = gif }; _favoriteRepository.Add(newFavorite); } else { _favoriteRepository.Delete(existingFavorite.Id); } return(RedirectToAction("Index")); }