public Category GetEssayCategory(string categoryName) { var essaysForCategory = new List<EssayForCategory>(); foreach (var essayDictItem in essaysDictionary.Where(e => e.Value.Category == categoryName)) { essaysForCategory.Add(new EssayForCategory(essayDictItem.Value.Title, essayDictItem.Key, essayDictItem.Value.PublishInfo.OriginalPublishDate)); } essaysForCategory = essaysForCategory.OrderByDescending(e => e.PublishDate).ToList(); return new Category(categoryName, essaysForCategory); }
public List<Year> GetEssayYears() { var years = new List<Year>(); foreach (var essayDictItem in essaysDictionary) { if (!years.Exists(e => e.YearValue == essayDictItem.Value.PublishYear)) { years.Add(new Year(essayDictItem.Value.PublishYear)); } years.Single(e => e.YearValue == essayDictItem.Value.PublishYear).EssaysForYear.Add( new EssayForYear(essayDictItem.Value.Title, essayDictItem.Key, essayDictItem.Value.Category, essayDictItem.Value.PublishInfo.OriginalPublishDate)); } years.ForEach(c => c.EssaysForYear = c.EssaysForYear.OrderByDescending(e => e.PublishDate).ToList()); return years.OrderByDescending(y => y.YearValue).ToList(); }