public async Task <DirectoryChildren> GetChildren(Guid directoryId, bool includeStaffOnly) { var directory = await _directoryRepository.GetById(directoryId); if (directory == null) { throw new NotFoundException("Directory not found."); } var children = new DirectoryChildren(); var subDirs = await _directoryRepository.GetSubdirectories(directoryId, includeStaffOnly); var files = await _documentRepository.GetByDirectory(directoryId); children.Subdirectories = subDirs.Select(BusinessMapper.Map <DirectoryModel>); children.Files = files.Select(BusinessMapper.Map <DocumentModel>); return(children); }