azure - 使用 IoT 中心实例化 DeviceClient

标签 azure azure-iot-hub

我有一个控制台应用程序,它通过 Azure IoT 中心直接向 Raspberry Pi 发送命令。一切正常。

不过,我感到困惑的是实例化 DeviceClient 的两种不同方式(可能更多?)。

例如:

    deviceClient = DeviceClient.Create(IOT_HUB_HOST_NAME, AuthenticationMethodFactory
         .CreateAuthenticationWithRegistrySymmetricKey(IOT_HUB_DEVICE, IOT_DEVICE_KEY), TransportType.Http1);

deviceClient = DeviceClient.CreateFromConnectionString(IOT_HUB_CONN_STRING);

似乎做了同样的事情。

为什么我要使用其中一种而不是另一种?我可以通过任何一种方式接收消息。

最佳答案

是的,最终他们得到了相同的结果。

https://github.com/Azure/azure-iot-sdks/blob/master/csharp/device/Microsoft.Azure.Devices.Client/DeviceClient.cs

Create(...) 方法调用 IotHubConnectionStringBuilder.Create(...) 然后 CreateFromConnectionString(...) 并描述它是从各个参数创建 DeviceClient 的方法。

因此,我相信 Create 是某种获取参数的包装器,然后从各个参数创建连接字符串并将其传递给 CreateFromConnectionString(...)。因此,我认为主要区别在于性能。

关于azure - 使用 IoT 中心实例化 DeviceClient,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36726336/

相关文章:

java - hibernate : @ValueGenerationType applied at insert but not update time

c# - Azure 函数在 Linux 上出现 'Listener unable to start' 错误

python-3.x - 用于 DataFactory 的 Azure Python SDK 指向特定的 GIT 分支

azure - 我应该如何将后端解决方案链接到 IoT 中心

java - Azure物联网设备sdk是否支持多个设备同时连接?

azure - 由于无法在 Azure ARM 中创建 Blob 容器,那么如何使用 ARM 启用 Archive?

azure - 将笔记本输出作为参数传递以复制事件

ssl - 将 Mosquitto MQTT C 客户端连接到 Azure 物联网中心

azure - 为什么 Azure IoT 中心将事件中心作为端点?

azure - 代表 Azure IoT 中心上的其他设备