Example #1
0
        // import data from web api
        public async Task ImportDataFromWebApi()
        {
            Property PR = DB.GetPropertyAsync().Result;

            if (PR != null && PR.WebApiAddress != "" && PR.WebApiAddress != null)
            {
                try
                {
                    var MS = new WebApi(PR.WebApiAddress);
                    MoviesFound = await MS.GetDataMovieArchiveWS(PR.GetMovieLastUpdate);

                    if (MoviesFound.Count > 0)
                    {
                        DB.InsertMoviesAsync(MoviesFound).Wait();
                    }

                    //Update date
                    PR.GetMovieLastUpdate = PR.GetRatingLastUpdate = DateTime.Now;
                    int r = DB.UpdatePropertyAsync(PR).Result;
                }
                catch (Exception e)
                { throw e; }
            }
            else
            {
                throw new NotSupportedException("ERROR: WebApi address not valid");
            }
        }
Example #2
0
        // import data from csv file
        public async Task ImportMovieDataFromFile(Stream DataFile)
        {
            Movie MovieImport, MovieTMDB;

            string[] values;
            int      Result;

            try
            {
                MoviesFound = new List <Movie>();
                using (var reader = new StreamReader(DataFile))
                {
                    while (!reader.EndOfStream)
                    {
                        var line = reader.ReadLine();

                        if (!line.Contains("ID,Title,"))
                        {
                            values = line.Split(',');

                            MovieImport = new Movie();

                            MovieImport.ID     = int.Parse(values[0]);
                            MovieImport.Title  = values[1];
                            MovieImport.TmdbID = int.Parse(values[2]);
                            if (values[3] != "")
                            {
                                MovieImport.DateIns = DateTime.Parse(values[3], CultureInfo.CreateSpecificCulture("it-ITA"));
                            }
                            else
                            {
                                MovieImport.DateIns = DateTime.Now;
                            }

                            //cerco il poster aggiornato
                            MovieTMDB          = SearchMovieInTMDBByID(MovieImport.TmdbID);
                            MovieImport.Poster = MovieTMDB.Poster;

                            MoviesFound.Add(MovieImport);
                        }
                    }

                    Result = await DB.InsertMoviesAsync(MoviesFound);
                }
            }
            catch (Exception ex)
            { Crashes.TrackError(ex); }
        }