public IDictionary <string, Core.Models.TransactionType[]> Load() { //cached for an hour var siteCodes = _activeSiteCodesLookupService.Load(); var result = new Dictionary <string, Core.Models.TransactionType[]>(); foreach (var siteCode in siteCodes) { var transactionTypes = _transactionTypeService.List(siteCode, null); result.Add(siteCode, transactionTypes.ToArray()); } return(result); }