我正在尝试从注册表管理器中读取我的设备的双胞胎。这是我的代码:
DeviceClient client =
DeviceClient.CreateFromConnectionString(DeviceConnectionString,
TransportType.Mqtt);
Twin deviceTwin = await deviceClient.GetTwinAsync();
Console.WriteLine(deviceTwin.ToJson());
然而,我得到的Json如下。
{"deviceId":null,"etag":null,"version":null,"properties":{"desired":{"$version":1},"reported":{"$version":1}}}
答案 0 :(得分:1)
我转载了你的问题。
对于此问题,您可以在azure-iot-sdk-csharp存储库上打开问题。
对于变通方法,您可以像这样使用REST API:
或者像这样使用Azure IoT Service SDK:
using Microsoft.Azure.Devices;
...
var client = RegistryManager.CreateFromConnectionString(IoTHubConnectionString);
var twinData = await client.GetTwinAsync(deviceId);
Console.WriteLine(twinData.ToJson());
答案 1 :(得分:1)
这不是问题和/或解决方法。 Documentation 表示:
<块引用>检索当前设备的设备孪生属性。对于完整的设备孪生对象,请使用 Microsoft.Azure.Devices.RegistryManager.GetTwinAsync(string deviceId)。