问题描述
背景: 我想使用LogicApp对嵌套字段进行更新
这就是我所做的:
-
运行查询以获取需要的文档
-
创建一个全局变量,该变量包含我要“更新”的数组
-
为第一个查询的每个循环运行,解析JSON,为每个循环创建一个
feedbacks数组中的所有项目:
[
{ "id" : "1234"}
]
-
在循环中将我创建的变量附加到当前项中
-
最后使用在
中创建的更新数组来更新原始反馈数组。
动态地第一个变量。
"id":"1234"
"Features":
[
{
"id": "update me"
"state": "update me"
}
]
我想它放置了数组
[
{
"id": "update me"
"state": "update me"
}
]
内部
Feedbacks array []
当我想要反馈ID指向的项和数组在反馈数组中进行更新时,嵌套在Features数组中。
例如,这是保存“反馈”数组的功能容器(突出显示)
在上面的Feedbacks数组中,我要在其每个ID中进行迭代,然后使用我在变量中提供的内容更新那个Features数组
(我认为需要更新的内容已放在该初始化变量中?)
任何建议或建议都将不胜感激。我对此有些困惑。
解决方法
不幸的是,目前我无法访问Azure门户,但我可以尝试在此处提出一些建议。
我想将其放置在Feedbacks数组[]
中
您可以通过在当前时刻打开Logic应用执行块并调试内容来进行检查。但是,目前我可能会看到的一个问题是,将[
作为属性放置在主对象中时,需要删除Feedback
括号。
在上面的Feedbacks数组中,我想在其每个ID中进行迭代,然后使用我在变量中提供的内容更新那个Features数组
好的,这里有几件事:
- 确保CosmososDB数据的内容一致。如果您的
Feedbacks
数据逐项保存在CosmosDB中(每个项是一个单独的记录),则应该以相同的方式进行更新。但是,如果您的Feedbacks
数组是某个更大对象的一部分,那么,作为对CosmosDB的更新,您应该发送更大对象,其中包含{{1 }}数组,而不仅仅是Feedbacks
数组或其一部分。 - 确保对CosmosDB使用相同的Partition Key更新数据。