1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
   |  
using System;
using System.Collections.Generic;
using System.IO;
using System.Net;
using System.Data;
using System.Data.SqlClient;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
 
namespace DBSerie
{
    /// <summary>
    /// Classe gérant l'intégration des données en provenance de l'API IMDB par le biais
    /// de l'appel de structure JSON en direct WEB avec URL
    /// </summary>
    internal class DataIntegration
    {
        /// <summary>
        /// Cette procédure va charger le film concerné ainsi que tous les acteurs, les réalisateurs, les créateurs et les compagnies de productions.
        /// </summary>
        /// <param name="ImDbId"></param>
        /// <returns></returns>
        public static string ChargerFilm(string ImDbId)
        {
            //Ouverture du JSON pour lecture de ses données et chargement dans la variable Film comme prévu par le parser
            string jsonString;
            using (WebClient wc = new WebClient())
            {
                jsonString = wc.DownloadString("https://imdb-api.com/fr/API/Title/k_1adta0q8/" + ImDbId + "/FullActor,FullCast,");
            }
            var film = Film.FromJson(jsonString);
            //Chargement des données du film uniquement, la vérification d'existance se fait dans la Proc Stock
            SqlParameter[] LParam = new SqlParameter[9];
            LParam[0] = new SqlParameter("ImDbId", film.Id);
            LParam[1] = new SqlParameter("Franchise", "");
            LParam[2] = new SqlParameter("seasonNumber", 0);
            LParam[3] = new SqlParameter("episodeNumber", 0);
            LParam[4] = new SqlParameter("Title", film.Title);
            LParam[5] = new SqlParameter("FullTitle", film.FullTitle);
            LParam[6] = new SqlParameter("OriginalTitle", film.OriginalTitle);
            LParam[7] = new SqlParameter("Year", film.Year);
            LParam[8] = new SqlParameter("released", film.ReleaseDate);
            AccessData.RetournerScalaire("Exec AjoutFilm @ImDbId,@Franchise,@seasonNumber,@episodeNumber,@Title,@FullTitle,@OriginalTitle,@Year,@released", LParam);
 
            return "Tout va bien pour le film " + film.Title;
        }
 
        public static string ChargeSaison(string ImDbId)
        {
            string jsonStringS;
            using (WebClient wc = new WebClient())
            {
                jsonStringS = wc.DownloadString("https://imdb-api.com/fr/API/Title/k_1adta0q8/" + ImDbId + "/FullActor,FullCast,");
            }
            var saison = Saison.FromJson(jsonStringS);
 
            return ("saison");
        } | 
Partager