Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Newtonsoft.Json;
- using OnlineMoviesCatalog.Data;
- using OnlineMoviesCatalog.Models;
- using OnlineMoviesCatalog.Service.Providers.Contracts;
- using System.IO;
- namespace OnlineMoviesCatalog.Service.Providers
- {
- public class InputProvider : IInputProvider
- {
- private readonly MovieCatalogContext context;
- public InputProvider(MovieCatalogContext movieCatalogContext)
- {
- this.context = movieCatalogContext;
- }
- public void LoadJsons()
- {
- LoadActors();
- LoadGenres();
- LoadUsers();
- LoadMovies();
- LoadReviews();
- LoadMovieActors();
- LoadMovieGenres();
- }
- public void LoadUsers()
- {
- var usersAsJson = File.ReadAllText(@"..\..\..\..\OnlineMoviesCatalog.Data\JsonRaw\users.json");
- var users = JsonConvert.DeserializeObject<User[]>(usersAsJson);
- foreach (var user in users)
- {
- context.Users.Add(new User { UserName = user.UserName, Password = user.Password });
- }
- context.SaveChanges();
- }
- public void LoadMovies()
- {
- var moviesAsJson = File.ReadAllText(@"..\..\..\..\OnlineMoviesCatalog.Data\JsonRaw\movies.json");
- var movies = JsonConvert.DeserializeObject<Movie[]>(moviesAsJson);
- foreach (var movie in movies)
- {
- context.Movies.Add(new Movie { Title = movie.Title, Trailer = movie.Trailer, ReleaseDate = movie.ReleaseDate, Text = movie.Text, UserId = movie.UserId, AverageRating = movie.AverageRating, TotalRating = movie.TotalRating, NumberOfVotes = movie.NumberOfVotes});
- }
- context.SaveChanges();
- }
- public void LoadActors()
- {
- var actorAsJson = File.ReadAllText(@"..\..\..\..\OnlineMoviesCatalog.Data\JsonRaw\actors.json");
- var actors = JsonConvert.DeserializeObject<Actor[]>(actorAsJson);
- foreach (var actor in actors)
- {
- context.Actors.Add(new Actor { FirstName = actor.FirstName, LastName = actor.LastName });
- }
- context.SaveChanges();
- }
- public void LoadGenres()
- {
- var genresAsJson = File.ReadAllText(@"..\..\..\..\OnlineMoviesCatalog.Data\JsonRaw\genres.json");
- var genres = JsonConvert.DeserializeObject<Genre[]>(genresAsJson);
- foreach (var genre in genres)
- {
- context.Genres.Add(new Genre { Name = genre.Name });
- }
- context.SaveChanges();
- }
- public void LoadReviews()
- {
- var reviewsAsJson = File.ReadAllText(@"..\..\..\..\OnlineMoviesCatalog.Data\JsonRaw\reviews.json");
- var reviews = JsonConvert.DeserializeObject<Review[]>(reviewsAsJson);
- foreach (var review in reviews)
- {
- context.Reviews.Add(new Review { Description = review.Description, IsDeleted = review.IsDeleted, Rating = review.Rating, UserId = review.UserId, CreatedOn = review.CreatedOn, MovieId = review.MovieId});
- }
- context.SaveChanges();
- }
- public void LoadMovieGenres()
- {
- var movGenresAsJson = File.ReadAllText(@"..\..\..\..\OnlineMoviesCatalog.Data\JsonRaw\moviesGenres.json");
- var movieGenres = JsonConvert.DeserializeObject<MovieGenres[]>(movGenresAsJson);
- foreach (var movieGenre in movieGenres)
- {
- context.MovieGenres.Add(new MovieGenres { GenreId = movieGenre.GenreId, MovieId = movieGenre.MovieId });
- }
- context.SaveChanges();
- }
- public void LoadMovieActors()
- {
- var movieActorsAsString = File.ReadAllText(@"..\..\..\..\OnlineMoviesCatalog.Data\JsonRaw\moviesActors.json");
- var movieActors = JsonConvert.DeserializeObject<MovieActors[]>(movieActorsAsString);
- foreach (var movActor in movieActors)
- {
- context.MovieActors.Add(new MovieActors { ActorId = movActor.ActorId, MovieId = movActor.ActorId });
- }
- context.SaveChanges();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement