public ActionResult Index(string slug) { var challenges = GlobalStorage.H4Manager.Challenges.Challenges; var challengeCategories = new List <MetadataModels.ChallengeCategory>(); foreach (var challenge in from challenge in challenges let weHaveIt = (challengeCategories.FirstOrDefault(c => c.Id == (int)challenge.Category) != null) where !weHaveIt select challenge) { challengeCategories.Add(MetadataHelpers.GetChallengeCategory((int)challenge.Category)); } var selectedCategory = challengeCategories.FirstOrDefault(c => c.Name.ToLowerInvariant().Replace(" ", "") == slug.ToLowerInvariant()); return(View(new ChallengesViewModel(selectedCategory, challengeCategories, challenges))); }