Пример #1
0
        public async Task <OMDbTitle> GetImdbData(string externalId)
        {
            OMDbController omdbController = new OMDbController();
            OMDbTitle      omdbTitle      = await omdbController.GetById(externalId);

            return(omdbTitle);
        }
Пример #2
0
        public async Task <OMDbTitle> GetById(string id)
        {
            OMDbTitle omdbTitle = new OMDbTitle();

            string requestString = baseUrl + "?apikey=" + omdbClient.ApiKey;

            //construct request string
            if (id != null)
            {
                requestString = requestString + "&i=" + id;
            }

            using (var client = new HttpClient())
            {
                //Passing service base url
                client.BaseAddress = new Uri(baseUrl);

                client.DefaultRequestHeaders.Clear();

                //Define request data format (default for omdb is JSON, may be extraneous)
                client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("application/json"));

                //Sending request to find web api REST service resource
                HttpResponseMessage response = await client.GetAsync(requestString);

                //Checking if the response, sent using HttpClient, is successful or not
                if (response.IsSuccessStatusCode)
                {
                    omdbTitle = JsonToListOmdbTitles(response)[0];
                }

                return(omdbTitle);
            }
        }
Пример #3
0
        public async Task <IActionResult> GetImagesImdb()
        {
            string             userId         = Common.ExtensionMethods.getUserId(this.User);
            OMDbController     omdbController = new OMDbController();
            List <MediaObject> mediaObjects   = context.MediaObjects.
                                                Where(u => u.OwnerId == userId).
                                                Where(d => d.DatabaseSource == 1).
                                                Where(img => img.Image == null).
                                                ToList();

            foreach (MediaObject mediaObject in mediaObjects)
            {
                OMDbTitle omdbTitle = await omdbController.GetById(mediaObject.ExternalId);

                if (omdbTitle.Poster != "N/A" & omdbTitle.Poster != null)
                {
                    mediaObject.Image = omdbTitle.Poster;
                }
            }

            context.SaveChanges();

            return(Redirect("/Media/Index"));
        }
Пример #4
0
        public async Task <IActionResult> Details(int ID)
        {
            string      userId      = Common.ExtensionMethods.getUserId(this.User);
            MediaObject mediaObject = context.MediaObjects.
                                      Include(s => s.MediaSubType).
                                      Where(u => u.OwnerId == userId).
                                      SingleOrDefault(o => o.ID == ID);

            if (mediaObject != null)
            {
                EditMediaObjectViewModel editMediaObjectViewModel = new EditMediaObjectViewModel(mediaObject, GetSelectListSubTypes());

                if (mediaObject.DatabaseSource == 1)
                {
                    OMDbTitle omdbTitle = await GetImdbData(mediaObject.ExternalId);

                    editMediaObjectViewModel.OMDbTitle = omdbTitle;
                }

                return(View(editMediaObjectViewModel));
            }

            return(Redirect("/Media/Index"));
        }