public ActionResult Index(string artistName, string releaseTitle) { var release = _releaseDetailsService.GetRelease(artistName, releaseTitle); var viewModel = new ReleaseDetailsViewModel { Release = release }; return(PartialView(viewModel)); }
public IActionResult ReleaseDetails(string date, int gameid, int platformid) { //this assumes a non-parsable date is a url/all dates are valid and parsable DateTime dateParse = new DateTime(); if (DateTime.TryParse(date, out dateParse)) { return(AddGame(gameid, platformid, date)); } var html = date + "releases/"; HtmlWeb web = new HtmlWeb(); var htmlDoc = web.Load(html); List <string> pageValues = new List <string>() { "name", "platform", "region", "releaseDate" }; List <string> releaseDates = new List <string>(); List <string> justDates = new List <string>(); var htmlNodes = htmlDoc.DocumentNode.SelectNodes("//tbody/tr/td"); foreach (var node in htmlNodes) { if (node.Attributes.Count > 0 && pageValues.Contains(node.Attributes["data-field"].Value)) { releaseDates.Add(node.Attributes["data-field"].Value.Trim()); releaseDates.Add(node.InnerText.Trim()); } } for (int i = 0; i < releaseDates.Count; i++) { if ((i + 1) % 8 == 0) { justDates.Add(releaseDates[i]); } } ReleaseDetailsViewModel send = new ReleaseDetailsViewModel { GameID = gameid, PlatformID = platformid, ReleaseDates = justDates, }; return(View(send)); }