Partilhar via


QueryIterator class

Representa um objeto QueryIterator, uma implementação de feed ou resposta de consulta que permite a travessia e a iteração sobre a resposta no serviço de banco de dados do Azure Cosmos DB.

Métodos

fetchAll()

Buscar todas as páginas para a consulta e retornar um único FeedResponse.

fetchNext()

Recupere o próximo lote do feed.

Isso pode ou não buscar mais páginas do back-end, dependendo de suas configurações e do tipo de consulta. As consultas agregadas geralmente buscam todas as páginas de back-end antes de retornar o primeiro lote de respostas.

getAsyncIterator()

Obtém um iterador assíncrono que produzirá resultados até a conclusão.

NOTA: AsyncIterators são um recurso muito novo e você pode precisar usar polyfils/etc. para usá-los em seu código.

Se você estiver usando o TypeScript, poderá usar o polipreenchimento a seguir, desde que tenha como destino o ES6 ou superior e esteja sendo executado no Nó 6 ou superior.

if (!Symbol || !Symbol.asyncIterator) {
  (Symbol as any).asyncIterator = Symbol.for("Symbol.asyncIterator");
}

Exemplo

Iterar em todos os bancos de dados

for await(const { resources: db } of client.databases.readAll().getAsyncIterator()) {
  console.log(`Got ${db} from AsyncIterator`);
}
hasMoreResults()

Determine se ainda há recursos restantes para processar com base no valor do token de continuação ou nos elementos restantes no lote atual no QueryIterator.

reset()

Redefina o QueryIterator para o início e limpe todos os recursos dentro dele

Detalhes de Método

fetchAll()

Buscar todas as páginas para a consulta e retornar um único FeedResponse.

function fetchAll(): Promise<FeedResponse<T>>

Devoluções

Promise<FeedResponse<T>>

fetchNext()

Recupere o próximo lote do feed.

Isso pode ou não buscar mais páginas do back-end, dependendo de suas configurações e do tipo de consulta. As consultas agregadas geralmente buscam todas as páginas de back-end antes de retornar o primeiro lote de respostas.

function fetchNext(): Promise<FeedResponse<T>>

Devoluções

Promise<FeedResponse<T>>

getAsyncIterator()

Obtém um iterador assíncrono que produzirá resultados até a conclusão.

NOTA: AsyncIterators são um recurso muito novo e você pode precisar usar polyfils/etc. para usá-los em seu código.

Se você estiver usando o TypeScript, poderá usar o polipreenchimento a seguir, desde que tenha como destino o ES6 ou superior e esteja sendo executado no Nó 6 ou superior.

if (!Symbol || !Symbol.asyncIterator) {
  (Symbol as any).asyncIterator = Symbol.for("Symbol.asyncIterator");
}

Exemplo

Iterar em todos os bancos de dados

for await(const { resources: db } of client.databases.readAll().getAsyncIterator()) {
  console.log(`Got ${db} from AsyncIterator`);
}
function getAsyncIterator(): AsyncIterable<FeedResponse<T>>

Devoluções

AsyncIterable<FeedResponse<T>>

hasMoreResults()

Determine se ainda há recursos restantes para processar com base no valor do token de continuação ou nos elementos restantes no lote atual no QueryIterator.

function hasMoreResults(): boolean

Devoluções

boolean

true se houver outros elementos para processar no QueryIterator.

reset()

Redefina o QueryIterator para o início e limpe todos os recursos dentro dele

function reset()