Partager via


QueryClient.CreateAsync<T> Méthode

Définition

Exécutez une requête sur votre hub IoT et obtenez un ensemble itérable des éléments interrogés.

public virtual System.Threading.Tasks.Task<Microsoft.Azure.Devices.QueryResponse<T>> CreateAsync<T> (string query, Microsoft.Azure.Devices.QueryOptions options = default, System.Threading.CancellationToken cancellationToken = default);
abstract member CreateAsync : string * Microsoft.Azure.Devices.QueryOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Devices.QueryResponse<'T>>
override this.CreateAsync : string * Microsoft.Azure.Devices.QueryOptions * System.Threading.CancellationToken -> System.Threading.Tasks.Task<Microsoft.Azure.Devices.QueryResponse<'T>>
Public Overridable Function CreateAsync(Of T) (query As String, Optional options As QueryOptions = Nothing, Optional cancellationToken As CancellationToken = Nothing) As Task(Of QueryResponse(Of T))

Paramètres de type

T

Type dans lequel désérialiser l’ensemble d’éléments. Par exemple, lors de l’exécution d’une requête telle que « SELECT * FROM devices », ce type doit être ClientTwin. Lors de l’exécution d’une requête telle que « SELECT * FROM devices.jobs », ce type doit être ScheduledJob.

Paramètres

query
String

Requête. Pour plus d’informations sur la création de cette requête, consultez ce document .

options
QueryOptions

Paramètres facultatifs pour exécuter la requête.

cancellationToken
CancellationToken

Jeton d’annulation de tâche.

Retours

Ensemble itérable des éléments interrogés.

Exceptions

Lorsque le fourni query a la valeur Null.

Si le fourni query est vide ou espace blanc.

Si IoT Hub a répondu à la demande avec un code de status non réussi. Par exemple, si la requête fournie a été limitée, IotHubServiceException avec ThrottlingException est levée. Pour obtenir la liste complète des cas d’erreur possibles, consultez IotHubServiceErrorCode.

Si la requête HTTP échoue en raison d’un problème sous-jacent tel que la connectivité réseau, l’échec DNS ou la validation du certificat de serveur.

Si le jeton d’annulation fourni a demandé l’annulation.

Exemples

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

Remarques

Le type d’éléments itérables retournés par cette requête dépend de la requête fournie.

S’applique à