QueryResponse<T>.MoveNextAsync(QueryOptions, CancellationToken) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Avanza hasta el siguiente elemento de los resultados de la 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
Devoluciones
True si había un elemento siguiente en los resultados de la consulta. False si no había más elementos.
Excepciones
Si este método realizó una solicitud a IoT Hub para obtener la siguiente página de elementos, pero IoT Hub respondió a la solicitud con un código de estado no correcto. Por ejemplo, si la solicitud proporcionada se ha limitado, IotHubServiceException se produce con ThrottlingException . Para obtener una lista completa de los posibles casos de error, vea IotHubServiceErrorCode.
Si este método realizó una solicitud a IoT Hub para obtener la siguiente página de elementos, pero se produce un error en la solicitud HTTP debido a un problema subyacente, como la conectividad de red, el error de DNS o la validación del certificado de servidor.
Si el token de cancelación proporcionado ha solicitado la cancelación.
Ejemplos
QueryResponse<Twin> queriedTwins = await iotHubServiceClient.Query.CreateAsync<Twin>("SELECT * FROM devices");
while (await queriedTwins.MoveNextAsync())
{
Twin queriedTwin = queriedTwins.Current;
Console.WriteLine(queriedTwin);
}
Comentarios
Al igual que con una implementación más típica de IEnumerator, se debe llamar a esta función una vez antes de comprobar Current.
Esta función es asincrónica porque puede realizar una solicitud de servicio para capturar la siguiente página de resultados si la página actual de resultados ya se ha avanzado. Tenga en cuenta que esta función devolverá True incluso si está al final de una página determinada de elementos siempre y cuando haya al menos una página más que se va a capturar.
Se aplica a
Azure SDK for .NET