Azure IoT中心设备双胞胎-如何在查询中不获取元数据

时间:2020-04-01 15:06:23

标签: azure asp.net-core web-applications azure-iot-hub

我正在.NET Core 3.0中开发一个Azure IoT Web应用程序,并且使用Microsoft.Azure.Devices.RegistryManager来获取设备孪生兄弟。但是,我总是得到与之一起发送的元数据。它占用了双胞胎设备的一半以上的尺寸,我不需要它。当获得一堆设备双胞胎时,这意味着大量的流量,我想减少它。

我能否在不获取元数据的情况下获取设备双胞胎?

有人吗?

有人吗?

1 个答案:

答案 0 :(得分:0)

您可以使用投影查询,因为IoT中心提供了一种类似SQL的语言来检索有关设备孪生的信息。

示例:

var query = registryManager.CreateQuery("SELECT LastActivityTime FROM devices WHERE status = 'enabled'");
while (query.HasMoreResults)
{
    var page = await query.GetNextAsTwinAsync();
    foreach (var twin in page)
    {
        // do work on twin object
    }
}

此处有更多信息:IoT Hub query language for device and module twins, jobs, and message routing