代码之家  ›  专栏  ›  技术社区  ›  Colin Desmond

双模块空车返回

  •  2
  • Colin Desmond  · 技术社区  · 8 年前

    我试图在一个模块的设备twin上设置所需的属性,但是当我从物联网集线器中检索twin时,它会返回空值。

    var moduleClient = ModuleClient.CreateFromConnectionString(connectionString);
    var moduleTwin = await moduleClient.GetTwinAsync();
    

    当我在调试器中检查moduletwin时,我得到

    debugger showing all properties as null

    连接字符串是模块的连接字符串,从物联网集线器复制。

    知道我做错了什么吗?

    1 回复  |  直到 8 年前
        1
  •  2
  •   Rita Han    8 年前

    这是按设计的。所以这个问题是可以预料的。

    从模块应用程序,只有读取所需属性和读/写报告属性的权限。请参见以下内容:

    enter image description here

    要访问所有模块twin,可以从解决方案后端进行访问,并需要ServiceConnect权限。新增加双模块。您需要Microsoft.azure.devices v1.16.0-preview-001或更高版本。以下是控制台应用程序示例。

            RegistryManager registryManager = RegistryManager.CreateFromConnectionString(connectionString);
            Module module;
    
            var moduleTwin = await registryManager.GetTwinAsync(deviceID, moduleID);
    

    enter image description here

    参考文献:

    understand and use module twins in IoT Hub

    Get started with IoT Hub module identity and module twin using .NET back end and .NET device

    推荐文章