public static Movie ToDTA(this Database.Movies movie) { return(new Movie { Title = movie.Title, CoverImage = movie.Cover, Description = movie.Description, Genres = ((MovieCrawler.Domain.Model.MovieGenre)movie.Genres).ToDTA(), Streams = movie.MovieStreamSet.Select(li => li.ToDTA()).ToList() }); }
public string AddMovies() { if (!_context.Movies.Any()) { var movie1 = new Database.Movies() { Title = "Spider-Man: Far from Home", Year = 2019, Duration = "2:49", Rating = (decimal)7.6, Description = "Following the events of Avengers: Endgame (2019), Spider-Man must step up to take on new threats in a world that has changed forever.", Cast = "Tom Holland, Samuel L. Jackson, Jake Gyllenhaal", TrailerLink = "https://www.youtube.com/embed/Nt9L1jCKGnE", ImageLink = "https://m.media-amazon.com/images/M/MV5BMGZlNTY1ZWUtYTMzNC00ZjUyLWE0MjQtMTMxN2E3ODYxMWVmXkEyXkFqcGdeQXVyMDM2NDM2MQ@@._V1_SY1000_CR0,0,674,1000_AL_.jpg", Standalone = false, Price = (decimal)20.00, Genre = "Fantasy" }; var movie2 = new Database.Movies() { Title = "Joker", Year = 2019, Duration = "2:25", Rating = (decimal)8.8, Description = "In Gotham City, mentally-troubled comedian Arthur Fleck is disregarded and mistreated by society. He then embarks on a downward spiral of revolution and bloody crime. This path brings him face-to-face with his alter-ego: 'The Joker'.", Cast = " Joaquin Phoenix, Robert De Niro, Zazie Beetz", TrailerLink = "https://www.youtube.com/embed/zAGVQLHvwOY", ImageLink = "https://m.media-amazon.com/images/M/MV5BNGVjNWI4ZGUtNzE0MS00YTJmLWE0ZDctN2ZiYTk2YmI3NTYyXkEyXkFqcGdeQXVyMTkxNjUyNQ@@._V1_SY1000_CR0,0,674,1000_AL_.jpg", Standalone = false, Price = (decimal)20.00, Genre = "Drama" }; _context.Movies.AddRange(movie1, movie2); _context.SaveChanges(); return("Initialized"); } else { throw new UserException("The database is already initialized with movies!"); } }
public static void SaveMovieInformation(this Database.MoviesContext context, Database.Movies dbMovie, MovieInfo movieInfo) { context.Movies.InsertOnSubmit(dbMovie); foreach (var streamSet in movieInfo.Streams) { var dbStreamSet = new Database.MovieStreamSet { Movies = dbMovie, AddressSource = movieInfo.Link.ToString(), }; context.Captions.InsertAllOnSubmit(streamSet.Captions.Select(li => new Database.Captions { MovieStreamSet = dbStreamSet, Language = li.Language, Address = li.Address })); context.VideoStream.InsertAllOnSubmit(streamSet.VideoStreams.Select(li => new Database.VideoStream { MovieStreamSet = dbStreamSet, Resolution = (byte)li.Resolution, VideoAddress = li.AVStream, })); context.StreamCookie.InsertAllOnSubmit(streamSet.Cookies.Cast <System.Net.Cookie>().Select(li => new Database.StreamCookie { MovieStreamSet = dbStreamSet, Value = SerializationUtils.SerializeCookie(li), ExpirationDate = li.Expires })); context.StreamHeaders.InsertAllOnSubmit(streamSet.Headers.Select(li => new Database.StreamHeaders { MovieStreamSet = dbStreamSet, Name = li.Key, Value = li.Value, })); } }
private void Builder_OnMovieLoaded(object sender, MovieBuildedEventArgs e) { var movieInfo = e.MovieInfo; var dbMovie = new Database.Movies { ProviderId = provider.Id, Title = movieInfo.Title, Year = movieInfo.Year, Description = movieInfo.Description, Link = movieInfo.Link.ToString(), Genres = (int)movieInfo.Genre, CreatedDate = DateTime.Now }; if (movieInfo.CoverImage != null) { dbMovie.Cover = movieInfo.CoverImage.ToString(); } context.SaveMovieInformation(dbMovie, movieInfo); provider.LastMovieTitleProcessed = movieInfo.Title; context.SubmitChanges(); }