예제 #1
0
        public async Task RateMovieAsync(string userId, int movieId, int value)
        {
            var movie = await _db.Movies.FindAsync(movieId);

            if (movie == null)
            {
                throw new ResourceNotFoundException();
            }

            var vote = await _db.Votes.FindAsync(userId, movieId);

            if (vote == null)
            {
                vote = CreateVote(userId, movieId);
                await AddVote(vote);
            }

            if (vote.Value.HasValue)
            {
                movie.ChangeVote(vote.Value.Value, value);
            }
            else
            {
                movie.AddVote(value);
            }
            vote.Value = value;

            await _db.SaveChangesAsync();
        }
예제 #2
0
        public async Task <Director> AddDirector(Director director)
        {
            await _context.Directors.AddAsync(director);

            await _context.SaveChangesAsync();

            return(director);
        }
예제 #3
0
        public async Task <Movies> AddMovie(Movies movie)
        {
            await _context.Movies.AddAsync(movie);

            await _context.SaveChangesAsync();

            return(movie);
        }
예제 #4
0
        public async Task <Torrent> AddTorrent(Torrent torrent)
        {
            await _context.Torrents.AddAsync(torrent);

            await _context.SaveChangesAsync();

            return(torrent);
        }
예제 #5
0
        public async Task <Actor> AddActor(Actor actor)
        {
            await _context.Actors.AddAsync(actor);

            await _context.SaveChangesAsync();

            return(actor);
        }
예제 #6
0
        public async Task <Genre> AddGenre(Genre genre)
        {
            await _context.Genres.AddAsync(genre);

            await _context.SaveChangesAsync();

            return(genre);
        }
예제 #7
0
        public async Task CreateDefaultFoldersForUserAsync(string userId)
        {
            var favoriteFolder = new Folder
            {
                Name      = FolderName.FavoriteMovies,
                IsDefault = true,
                OwnerId   = userId
            };
            var watchLaterFolder = new Folder
            {
                Name      = FolderName.WatchLater,
                IsDefault = true,
                OwnerId   = userId
            };

            await _db.Folders.AddRangeAsync(favoriteFolder, watchLaterFolder);

            await _db.SaveChangesAsync();
        }
예제 #8
0
 public Task AddMovie(Movie movie)
 {
     _dbContext.Movies.Add(movie);
     return(_dbContext.SaveChangesAsync( ));
 }
예제 #9
0
 public Task AddGenre(Genre genre)
 {
     _dbContext.Genres.Add(genre);
     return(_dbContext.SaveChangesAsync( ));
 }