private static Nhl_Players_Bio_Goalie MapHtmlRowToModel(HtmlNode row, NhlSeasonType nhlSeasonType, int year) { HtmlNodeCollection tdNodes = row.SelectNodes(@"./td"); Nhl_Players_Bio_Goalie model = new Nhl_Players_Bio_Goalie(); model.NhlSeasonType = nhlSeasonType; model.Year = year; model.Number = ConvertStringToInt(tdNodes[0].InnerText); model.Name = tdNodes[1].InnerText; model.Team = tdNodes[2].InnerText; model.Position = "G"; model.DateOfBirth = Convert.ToDateTime(tdNodes[3].InnerText.Replace("'", "/")); model.BirthCity = tdNodes[4].InnerText; model.StateOrProvince = tdNodes[5].InnerText; model.BirthCountry = tdNodes[6].InnerText; model.HeightInches = ConvertStringToInt(tdNodes[7].InnerText); model.WeightLbs = ConvertStringToInt(tdNodes[8].InnerText); model.Catches = tdNodes[9].InnerText; model.Rookie = tdNodes[10].InnerText; model.DraftYear = ConvertStringToInt(tdNodes[11].InnerText); model.DraftRound = ConvertStringToInt(tdNodes[12].InnerText); model.DraftOverall = ConvertStringToInt(tdNodes[13].InnerText); model.GamesPlayed = ConvertStringToInt(tdNodes[14].InnerText); model.Wins = ConvertStringToInt(tdNodes[15].InnerText); model.Losses = ConvertStringToInt(tdNodes[16].InnerText); model.OTSOLosses = ConvertStringToInt(tdNodes[17].InnerText); model.GAA = Convert.ToDouble(tdNodes[18].InnerText); model.SavePercentage = Convert.ToDouble(tdNodes[19].InnerText); model.Shutouts = ConvertStringToInt(tdNodes[20].InnerText); return(model); }
private static List <Nhl_Players_Bio_Goalie> UpdateSeason(int year, NhlSeasonType nhlSeasonType, bool saveToDb) { // Get HTML rows NhlPlayersBioGoalie nhl = new NhlPlayersBioGoalie(); List <HtmlNode> rows = nhl.GetResultsForSeasonType(year, nhlSeasonType); // Parse into a list List <Nhl_Players_Bio_Goalie> results = new List <Nhl_Players_Bio_Goalie>(); foreach (HtmlNode row in rows) { Nhl_Players_Bio_Goalie result = NhlPlayersBioGoalie.MapHtmlRowToModel(row, nhlSeasonType, year); if (null != result) { results.Add(result); } } // Update DB if (saveToDb) { NhlPlayersBioGoalie.AddOrUpdateDb(results); } return(results); }