public Vote UpdateVote(Vote vote) { context.Votes.Attach(vote); context.Entry(vote).State = EntityState.Modified; context.SaveChanges(); return vote; }
public Vote CreateVote(Vote vote, long userId, long trackId) { var user = context.User.Find(userId); vote.User = user; var playlistTrack = context.PlaylistTracks.Find(trackId); vote = context.Votes.Add(vote); if (playlistTrack.Votes == null) playlistTrack.Votes = new Collection<Vote>(); playlistTrack.Votes.Add(vote); context.SaveChanges(); return vote; }
public void DeleteVote(Vote vote) { context.Votes.Remove(vote); context.SaveChanges(); }
public Vote CreateVote(int score, long userId, long trackId) { Vote vote; var playlist = repo.ReadPlaylists().FirstOrDefault(p => p.PlaylistTracks.Any(t=>t.Id == trackId)); var existingVote = repo.ReadVoteOfUserFromPlaylistTrack(userId, trackId); if (existingVote == null) { vote = new Vote() { Score = score }; return repo.CreateVote(vote, userId, trackId); } else { if (existingVote.Score == score) { DeleteVote(existingVote); existingVote.Score = 0; return existingVote; } else { vote = existingVote; vote.Score = score; return repo.UpdateVote(vote); } } }
public Vote UpdateVote(Vote vote) { return repo.UpdateVote(vote); }
public void DeleteVote(Vote vote) { repo.DeleteVote(vote); }