private void GetInfoForStat(ref string playerName, ref int number, DataColumn column, bool desc) { JackedStatsSet.PlayerStatsRow [] rows; rows = (JackedStatsSet.PlayerStatsRow[])stats.PlayerStats.Select( String.Empty, String.Format("{0} {1}", column.ColumnName, desc ? "DESC" : "ASC")); foreach (JackedStatsSet.PlayerStatsRow row in rows) { JackedStatsSet.PlayersRow parentRow = ((JackedStatsSet.PlayersRow)row.GetParentRow("PlayerStats_Players")); if (parentRow != null) { if (parentRow.Position.CompareTo("Goaltender") != 0) { number = (int)row[column]; playerName = parentRow.Name; break; } } else { System.Console.WriteLine("ERROR: parentRow is null"); } } }
private void ParsePlayerList() { XmlDocument document = new XmlDocument(); try { document.Load(String.Format("{0}{1}", playerListPath, gameId)); XmlNodeList nodes; nodes = document.SelectNodes("//response/game/venue"); arenaName = nodes[0].Attributes["stadium"].Value; stats.Players.Clear(); nodes = document.SelectNodes("//response/game/team/player-list/player"); foreach (XmlNode node in nodes) { JackedStatsSet.PlayersRow row = stats.Players.NewPlayersRow(); row.Name = node.Attributes["first-name"].Value + " " + node.Attributes["last-name"].Value; row.JackedPlayer_ID = Convert.ToInt32(node.Attributes["id"].Value); XmlNode extra = node.SelectNodes("attribute")[0]; row.Position = extra.Attributes["position"].Value; row.Number = extra.Attributes["number"].Value; lock (stats) { stats.Players.AddPlayersRow(row); } } } catch (Exception ex) { } }
private int ParseStatsList(int dataIndex) { int dataTotalSize, dataEndIndex = 0; XmlDocument document = new XmlDocument(); try { document.Load(String.Format("http://sports.jacked.com/jacked/widget/getWidgetData.do?WIDGET_ID=85" + "&USER_WIDGET_ID=219564&EVENT_ID={0}&START_TIME=0&DATA_START_INDEX={1}", gameId, dataIndex)); //document.Load("http://debian3800/otto/nhl/jacked/playerstats.xml"); XmlNodeList nodes; nodes = document.SelectNodes("//response/paging-info"); if (nodes.Count > 0) { dataTotalSize = Convert.ToInt32(nodes[0].Attributes["total-size"].Value); dataEndIndex = Convert.ToInt32(nodes[0].Attributes["end-index"].Value); nodes = document.SelectNodes("//response/player-stats/*/player"); foreach (XmlNode node in nodes) { JackedStatsSet.PlayerStatsRow row = stats.PlayerStats.NewPlayerStatsRow(); row.JackedPlayer_ID = Convert.ToInt32(node.Attributes["id"].Value); JackedStatsSet.PlayersRow parentRow = stats.Players.FindByJackedPlayer_ID(row.JackedPlayer_ID); row.Goals = Convert.ToInt32(node.Attributes["goals"].Value); row.Assists = Convert.ToInt32(node.Attributes["assists"].Value); row.SOG = Convert.ToInt32(node.Attributes["shots-on-goal"].Value); row.Hits = Convert.ToInt32(node.Attributes["hits"].Value); row.PlusMinus = Convert.ToInt32(node.Attributes["plus-minus"].Value); row.Penalties = Convert.ToInt32(node.Attributes["penalties"].Value); row.PIM = Convert.ToInt32(node.Attributes["penalty-minutes"].Value); row.FOW = Convert.ToInt32(node.Attributes["faceoffs-won"].Value); if (parentRow != null && parentRow.Position.CompareTo("Goaltender") == 0) { if (node.Attributes["shots-faced"] != null) { row.ShotsFaced = Convert.ToInt32(node.Attributes["shots-faced"].Value); } if (node.Attributes["saves"] != null) { row.Saves = Convert.ToInt32(node.Attributes["saves"].Value); } if (node.Attributes["save-percent"] != null) { row.SavePercent = Convert.ToDecimal(node.Attributes["save-percent"].Value); } } lock (stats) { JackedStatsSet.PlayerStatsRow deleteRow = stats.PlayerStats.FindByJackedPlayer_ID(row.JackedPlayer_ID); if (deleteRow != null) { stats.PlayerStats.RemovePlayerStatsRow(deleteRow); } stats.PlayerStats.AddPlayerStatsRow(row); } } } } catch (Exception ex) { System.Console.WriteLine(ex.Message); System.Console.WriteLine(ex.StackTrace); } return(dataEndIndex); }