本文介绍了如何在IOThub消息触发的Azure函数中获取消息的设备ID的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个由IOThub触发的Azure函数.所以在Azure功能中,我有
I have an Azure function that is triggered by IOThub. So in the Azure function, I have
public static async Task Run(EventData myIoTHubMessage1, TraceWriter log)
如何从事件数据中获取设备ID.
How do I get the device id from the Event Data.
我尝试了
log.Info("devid="+myIoTHubMessage1.SystemProperties["ConnectionDeviceId"]);
出现错误提示
The given key was not present in the dictionary.
以下文件说: https://docs.microsoft. com/en-us/azure/iot-hub/iot-hub-devguide-messages-construct
ConnectionDeviceId包含设备ID.有人会知道如何从EventData检索设备ID还是应该使用其他一些类.
ConnectionDeviceId contains the deviceId. Would anybody know how to retrieve the deviceid from EventData or should I use some other class.
推荐答案
您可以从SystemProperties
获取设备ID:
You can get device ID from SystemProperties
:
public static async Task Run(EventData myIoTHubMessage1, TraceWriter log)
{
var deviceId = myIoTHubMessage1.SystemProperties["iothub-connection-device-id"];
// ....
}
这篇关于如何在IOThub消息触发的Azure函数中获取消息的设备ID的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!