2016-12-14 4 views
1

я использую Azure поиск SDK 3.0.1 с синтаксисом, аналогичным ниже, где T является объектом ПОК, и я хочу Список вернулсяAzure SuggestAsync карта для POCO

await indexClient.Documents.SuggestAsync<T>(input.Term, suggesterName, 
         indexType.GetAutoCompleteSearchParameters()) 

это дает мне обратно DocumentSuggestResults, я не видел никаких примеров или методов в лазурном sdk, которые будут напрямую давать мне Ienumerable или конвертировать этот DocumentSuggestResults в Ienumerable. Есть ли простой способ сделать это? или мне нужно распаковать этот объект самостоятельно и создать Ienumerable сам?

ответ

1

DocumentSuggestResults не реализует IEnumerable, но вы всегда можете просто получить доступ к Results собственности и использовать LINQ, чтобы получить в документах:

IEnumerable<SuggestResult<T>> results = 
    (await indexClient.Documents.SuggestAsync<T>(input.Term, suggesterName, 
        indexType.GetAutoCompleteSearchParameters())).Results; 
IEnumerable<T> documents = results.Select(r => r.Document); 
+0

ошибок \t \t CS0266 Не удается неявно преобразовать тип «System.Collections.Generic.IList > 'to' System.Collections.Generic.IList '. Явное преобразование существует (вы пропускаете листинг?) –

+0

.Результаты имеют SuggestResult

+0

Вот что я получаю для компиляции в моей голове. :-) Я исправлю ответ. –