I am creating a report based on the following result set:

I wanted to get a unique set of weeks from the control group, but I also wanted to retrieve whether the week is an actual vs. a forecast.
Turns out it’s pretty easy:
public List<WeeklyUtilizationHistoryAndForecast> ReportSummary = businessService.GetWeeklyUtilizationHistoryAndForecast(isCache, ParamUserId, ParamStartWeek, ParamEndWeek, ParamBusinessUnitId, ParamIncludeTimeOff);
public List<WeeklyUtilizationHistoryAndForecast> Weeks = ReportSummary.OrderBy(m => m.WeekDisplay).DistinctBy(m => new { m.WeekDisplay, m.IsActual }).ToList();
I am creating a Flot Line Chart in .Net based on the following Entity Framework result set.

I want to get a distinct list of the report categories in alphabetical order to use as a control group.
Entity Framework provides an easy Distinct() method to retrieve distinct values from a data set, but it wasn’t completely obvious to me how to make sure that it was given to me in ascending order.
Turns out, it’s pretty easy.
List<string> categories = reportSummary.Select(m => m.CategoryName).Distinct().ToList();