/// <summary> /// Retrieve a list of all planets, and order them by their Diameter, from largest to smallest, /// as well as the average diameter of those planets whose diameter is known. /// </summary> /// <returns>ActionResult</returns> public async Task <IActionResult> GetAllPlanets() { var model = new AllPlanetsViewModel(); model.PlanetViewModels = (await _StarWarsService.GetPlanetsAsync()) .Select(p => new PlanetDetailsViewModel { Name = p.Name, Population = p.Population == "unknown" ? "unknown" : long.Parse(p.Population).ToString("N0"), Diameter = p.Diameter, Terrain = p.Terrain, LengthOfYear = p.LengthOfYear }) .OrderByDescending(p => p.DiameterAsInt) // Largest Diameter to Smallest Diameter .ToList(); return(View(model)); }