/// <summary>
        /// Searches the programs.
        /// </summary>
        /// <param name="searchProgramsDto">The search programs dto.</param>
        /// <returns></returns>
        public async Task <IList <ProgramResponseDto> > SearchPrograms(SearchProgramsRequestDto searchProgramsDto)
        {
            var token = authDataStorage.GetToken();

            return(await healthLibraryService.SearchPrograms(token, CustomerContext.Current.Customer.Id, searchProgramsDto));
        }
        /// <summary>
        /// Searches the programs.
        /// </summary>
        /// <param name="token">The token.</param>
        /// <param name="customerId">The customer identifier.</param>
        /// <param name="searchProgramsDto">The search programs dto.</param>
        /// <returns></returns>
        public async Task <IList <ProgramResponseDto> > SearchPrograms(string token, int customerId, SearchProgramsRequestDto searchProgramsDto)
        {
            var url = string.Format("/api/{0}/programs/", customerId);

            var pagedResult = await this.apiClient.SendRequestAsync <PagedResult <ProgramResponseDto> >(url, searchProgramsDto, Method.GET, null, token);

            return(pagedResult.Results);
        }