以下是我的设备孪生有效负载,错误地我为它添加了“ someKey”属性。
{
desired: {
"state": {
"processor": "running",
"light": "on"
},
"someKey": "someValue"
}
}
我想从JSON twin中永久删除“ someKey”属性。
答案 0 :(得分:1)
要从双JSON中删除“ someKey”
将空值分配给“ someKey”,然后仅将其从设备孪生JSON中删除。
{
desired: {
"state": {
"processor": "running",
"light": "on"
},
"someKey": null
}
}
因此,下一次以后,您将收到以下JSON
{
desired: {
"state": {
"processor": "running",
"light": "on"
}
}
}
答案 1 :(得分:0)
发件人:https://docs.microsoft.com/en-us/azure/iot-hub/iot-hub-devguide-device-twins#back-end-operations
设备操作
设备操作
设备应用程序使用以下原子操作在孪生设备上运行:
部分更新报告的属性。。此操作可以部分更新当前连接的设备的报告属性。此操作使用解决方案后端用于部分更新所需属性的JSON更新格式。
然后在后端操作中
部分更新设备孪生。。此操作使解决方案后端可以部分更新设备孪生中的标记或所需属性。部分更新表示为添加或更新任何属性的JSON文档。设置为null的属性将被删除。下面的示例使用值
{"newProperty": "newValue"}
创建一个新的所需属性,用existingProperty
覆盖"otherNewValue"
的现有值,并删除otherOldProperty
。没有对现有的所需属性或标记进行其他更改:
{
"properties": {
"desired": {
"newProperty": {
"nestedProperty": "newValue"
},
"existingProperty": "otherNewValue",
"otherOldProperty": null
}
}
}
(...)