/// <summary> /// Gets all the games for a platform. /// </summary> /// <param name="platform">The platform to return games for</param> /// <returns>A collection of all the games on the platform</returns> public static ICollection <GDBNETGameSearchResult> GetPlatformGames(GDBNETPlatformSearchResult platform) { ICollection <GDBNETGameSearchResult> games = GetPlatformGames(platform.ID); foreach (GDBNETGameSearchResult game in games) { game.Platform = platform.Name; } return(games); }
/// <summary> /// Gets a collection of all the available platforms. /// </summary> /// <returns>A collection of all the available platforms</returns> public static ICollection <GDBNETPlatformSearchResult> GetPlatforms() { XmlDocument doc = new XmlDocument(); doc.Load(@"http://thegamesdb.net/api/GetPlatformsList.php"); XmlNode root = doc.DocumentElement; IEnumerator ienum = root.FirstChild.NextSibling.GetEnumerator(); List <GDBNETPlatformSearchResult> platforms = new List <GDBNETPlatformSearchResult>(); // Iterate through all platforms XmlNode platformNode; while (ienum.MoveNext()) { platformNode = (XmlNode)ienum.Current; GDBNETPlatformSearchResult platform = new GDBNETPlatformSearchResult(); IEnumerator ienumPlatform = platformNode.GetEnumerator(); XmlNode attributeNode; while (ienumPlatform.MoveNext()) { attributeNode = (XmlNode)ienumPlatform.Current; // Iterate through all platform attributes switch (attributeNode.Name) { case "id": int.TryParse(attributeNode.InnerText, out platform.ID); break; case "name": platform.Name = attributeNode.InnerText; break; case "alias": platform.Alias = attributeNode.InnerText; break; } } platforms.Add(platform); } return(platforms); }
/// <summary> /// Gets all data for a specific platform. /// </summary> /// <param name="platform">The platform to return data for (can be found by using GetPlatformsList)</param> /// <returns>A Platform-object containing all the data about the platform, or null if no platform was found</returns> public static GDBNETPlatform GetPlatform(GDBNETPlatformSearchResult platform) { return(GetPlatform(platform.ID)); }