1

我创建了一个 IoT Hub Edge 设备。一开始,默认的 $edgeAgent 和 $edgeHub 模块进入了。这很好。然后我添加了一个“barkModule”(注意开头的小写 B)——只是一个测试模块,用于处理 D2C 事件消息和对模块的 DirectMethod 调用。

后来,我删除了该模块并添加了一个新模块,这次是使用 BarkModule(大写 B)。以这种方式摇晃了大约一个星期。

我做了这段代码来获取设备模块双胞胎的列表(_deviceTwins 是集线器上所有设备的双胞胎,这基本上只是获取设备的所有模块):

    foreach (var _device in _deviceTwins) {
        var moduleList = await registryManager.GetModulesOnDeviceAsync(_device.DeviceId);
        DeviceList.Add(new DeviceAndModules { DeviceTwin = _device, Modules = moduleList.ToList() });
    };

在它的模块孪生列表中——我得到了 BarkModule 和 barkModule 的条目。即使我的设备只有 $edgeAgent、$edgeHub 和 BarkModule 模块。

我什至深入研究了 $edgeAgent 的模块双胞胎,并且有大量的元数据事件历史记录(说真的,这是荒谬的大)——但在任何地方都没有提到小写-b“barkModule”

它是如何维护这些信息的?为什么这个还出现?有没有办法可以删除它?

这显示了模块: 显示四个模块

这表明只有三个: 设备上只有三个

4

0 回答 0