public Task <IEnumerable <Article> > DoSearch(SearchRequest request) { switch (request.SearchMode) { case SearchMode.Signature: { return(signatureService.DoSearch(request.SearchString)); } break; case SearchMode.Trie: { return(trieSearchService.DoSearch(request.SearchString)); } break; default: { return(searchService.DoSearch(request.SearchString)); } break; } }