/// <summary> /// Permet d'instancier une liste de PopularModel à partir de l'id du héro /// </summary> /// <returns>une liste de popularmodel</returns> public static List <PopularModel> getPopularity() { MarvelRequester r = new MarvelRequester(); List <PopularModel> mostPopular = new List <PopularModel>(); SqlConnection oConn = new SqlConnection(@"Data Source=26R2-14\WADSQL;Initial Catalog=PokWarVelDB;Integrated Security=True;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False"); SqlCommand oCmd; try { oConn.Open(); oCmd = new SqlCommand(@"SELECT TOP 5 idHero, AVG(convert(float,rating)) as moyenne FROM Eval GROUP BY idHero ORDER BY moyenne DESC, COUNT(idHero) DESC", oConn); SqlDataReader oDr = oCmd.ExecuteReader(); while (oDr.Read()) { Characters newHero = r.GetCharacterById((long)oDr["idHero"]); PopularModel pm = new PopularModel(); pm.NomHero = newHero.name; pm.IdHero = newHero.id; pm.RatingHero = float.Parse(oDr["moyenne"].ToString()); mostPopular.Add(pm); } oConn.Close(); } catch (Exception ex) { Debug.WriteLine(ex); } return(mostPopular); }
public ActionResult Results(string Search = "", string page = "") { int Current = 0; if (page == "" || page == "-1") { ViewBag.Next = 1; ViewBag.Prev = -1; Current = 0; } else { Current = int.Parse(page); if (Current > 1) { ViewBag.Prev = Current - 1; } ViewBag.Next = Current + 1; } MarvelRequester r = new MarvelRequester(); List <Characters> info = r.SearchCharacters(limit: 10, offset: Current * 10, SearchString: Search); ViewBag.searchword = Search; if (info != null && info.Count > 0) { return(View(info.Select(i => Mapper.FromMarvelToLocal(i)).ToList())); } else { return(View(new List <ResultModel>())); } }
public ActionResult Index(string searchHero, string pageS = "", int nrPageS = 1) { long show = nrPageS * 24; if (pageS == "") { show = 0; } else if (pageS == "next") { ViewBag.next = nrPageS + 1; } else if (pageS == "prev" && nrPageS >= 1) { ViewBag.prev = nrPageS - 1; } MarvelRequester r = new MarvelRequester(); List <Characters> info = r.SearchCharacters(limit: 24, offset: show, SearchString: searchHero); //filtre List <Characters> trouve = new List <Characters>(); foreach (Characters item in info) { if (item.name.Contains(searchHero)) { trouve.Add(item); } } return(View(trouve)); // In loc de tot foreach si return putem scrie: // return View(info.Where(l => l.name.Contains(searchHero))); }
public ActionResult Index() { MarvelRequester r = new MarvelRequester(); List <Characters> info = r.GetCharacters(limit: 100); return(View(info)); }
public ActionResult Index() { MarvelRequester r = new MarvelRequester(); List <Characters> info = r.GetCharacters(limit: 100); //info.Where(i=>i.name=="") une requete linq return(View(info)); }
public ActionResult Results(string toLookFor) { MarvelRequester r = new MarvelRequester(); List <Characters> resultList = new List <Characters>(); resultList = (toLookFor != "")? r.SearchCharacters(limit: 100, offset: 0, SearchString: toLookFor) : r.GetCharacters(limit: 100, offset: 0); ViewBag.Message = toLookFor; return(View(resultList)); }
/// <summary> /// The default action to HomeController. /// </summary> /// <param name="page">The page to display ( for Marvel Pagination)</param> /// <returns>The view Views/Home/Index.cshtml</returns> public ActionResult Index(string page = "") { //Si aucune page n'est transmise c'est que nous sommes sur la //première page donc nous ne devons pas "passer" de //héros avant l'affichage if (page == "") { //Variable de session mise à zéro SessionUtil.offsetGal = 0; } else { //Si je demande de retourner en arrière et que le nombre // de héros à "passer" est suppérieur à 12, //je peux donc diminuier le nombre de héros à passer de 12 //cela permet un affichage de 12 par 12 if (page == "prev" && SessionUtil.offsetGal > 12) { SessionUtil.offsetGal -= 12; } //Si je demande d'avancer, je prend les 12 héros suivants //Remarque : idéalement, on devrait connaitre le nombre total // ce qui permettrait de ne pas dépasser le nombre de héros lors // de l'interrogation du service if (page == "next") { SessionUtil.offsetGal += 12; } } //Création de l'objet requester permettant de dialoguer avec le service Marvel MarvelRequester r = new MarvelRequester(); //Appel de la fonction permettant de récupére les héros en lui // transmettant le offest qui définit le début de récupération // 12 => les 12 premier // 24 ==> les 12 suivants... List <Characters> info = r.GetCharacters(limit: 12, offset: SessionUtil.offsetGal); //Retour de la vue en lui transmettant le model à utiliser // Comme la _Fiche accepte un model ResultModel, je // doit transformer l'objet Character en ResultModel avant de renvoyer vers la vue // je le fais via la méthode statique FromMarvelToLocal return(View(info.Select(s => Mapper.FromMarvelToLocal(s)).ToList())); }
public ActionResult Index(string page = "", int nrPage = 1) { long show = nrPage * 24; if (page == "") { show = 0; } else if (page == "next") { ViewBag.next = nrPage + 1; } else if (page == "prev" && nrPage >= 1) { ViewBag.prev = nrPage - 1; } MarvelRequester r = new MarvelRequester(); List <Characters> info = r.GetCharacters(limit: 24, offset: show); return(View(info)); }