Compartilhar via


QueryResponse<T>.MoveNextAsync(QueryOptions, CancellationToken) Método

Definição

Avança para o próximo elemento dos resultados da consulta.

public System.Threading.Tasks.Task<bool> MoveNextAsync (Microsoft.Azure.Devices.QueryOptions queryOptions = default, System.Threading.CancellationToken cancellationToken = default);
member this.MoveNextAsync : Microsoft.Azure.Devices.QueryOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<bool>
Public Function MoveNextAsync (Optional queryOptions As QueryOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of Boolean)

Parâmetros

queryOptions
QueryOptions
cancellationToken
CancellationToken

Retornos

True se houver um próximo item nos resultados da consulta. False se não houver mais itens.

Exceções

Se esse método fez uma solicitação ao Hub IoT para obter a próxima página de itens, mas o Hub IoT respondeu à solicitação com um código de status não bem-sucedido. Por exemplo, se a solicitação fornecida foi limitada, IotHubServiceException com ThrottlingException é lançada. Para obter uma lista completa de possíveis casos de erro, consulte IotHubServiceErrorCode.

Se esse método fez uma solicitação ao hub IoT para obter a próxima página de itens, mas a solicitação HTTP falhará devido a um problema subjacente, como conectividade de rede, falha de DNS ou validação de certificado de servidor.

Se o token de cancelamento fornecido tiver solicitado o cancelamento.

Exemplos

QueryResponse<Twin> queriedTwins = await iotHubServiceClient.Query.CreateAsync<Twin>("SELECT * FROM devices"); while (await queriedTwins.MoveNextAsync()) { Twin queriedTwin = queriedTwins.Current; Console.WriteLine(queriedTwin); }

Comentários

Assim como acontece com uma implementação mais típica do IEnumerator, essa função deve ser chamada uma vez antes de verificar Current.

Essa função é assíncrona porque pode fazer uma solicitação de serviço para buscar a próxima página de resultados se a página atual de resultados já tiver sido avançada. Observe que essa função retornará True mesmo que esteja no final de uma página específica de itens, desde que haja pelo menos mais uma página a ser buscada.

Aplica-se a