Compartir a través de


QueryClient.CreateAsync<T> Método

Definición

Ejecute una consulta en el centro de IoT y obtenga un conjunto iterable de los elementos consultados.

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))

Parámetros de tipo

T

Tipo en el que se va a deserializar el conjunto de elementos. Por ejemplo, al ejecutar una consulta como "SELECT * FROM devices", este tipo debe ser ClientTwin. Al ejecutar una consulta como "SELECT * FROM devices.jobs", este tipo debe ser ScheduledJob.

Parámetros

query
String

La consulta. Consulte este documento para obtener más información sobre cómo compilar esta consulta.

options
QueryOptions

Parámetros opcionales con los que ejecutar la consulta.

cancellationToken
CancellationToken

Token de cancelación de tareas.

Devoluciones

Un conjunto iterable de los elementos consultados.

Excepciones

Cuando el valor proporcionado query es NULL.

Si el elemento proporcionado query está vacío o espacio en blanco.

Si IoT Hub respondió a la solicitud con un código de estado no correcto. Por ejemplo, si se ha limitado la solicitud proporcionada, IotHubServiceException se produce con ThrottlingException . Para obtener una lista completa de posibles casos de error, vea IotHubServiceErrorCode.

Si se produce un error en la solicitud HTTP debido a un problema subyacente, como la conectividad de red, el error 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); } QueryResponse<ScheduledJob> queriedJobs = await iotHubServiceClient.Query.CreateAsync<ScheduledJob>("SELECT * FROM devices.jobs"); while (await queriedJobs.MoveNextAsync()) { ScheduledJob queriedJob = queriedJobs.Current; Console.WriteLine(queriedJob); }

Comentarios

El tipo de elementos iterables devueltos por esta consulta dependerá de la consulta proporcionada.

Se aplica a