背景
我目前正在开发一个基于 Powerapps 的特定搜索引擎前端,它需要通过 Power-Automate Flow 将字符串数组传递给服务,以便指定过滤器。
流程
流程本身采用 JSON 对象作为输入(将传输到后端服务),如下所示:
{
service: "string"
types : ["A", "B", "C", ...]
}
但是根据我找到的多个来源,Powerapps 不允许创建数组。 当我尝试通过 JSON() 函数序列化我的对象时,我最终得到以下结果:
{
service: "string"
types : [{"Value" : "A"}, {"Value" : "B"}, {"Value" : "C"}, ...]
}
我已经尝试了以下方法(还有更多,但我不记得全部)来生成对象,希望能找到有用的东西,但我现在不知道了。
Collect(arrayTypes; ["A", "B", "C", ...])
ClearCollect(arrayTypes; ["A", "B", "C", ...])
Set(arrayTypes; ["A", "B", "C", ...])
Set(arrayTypes; JSON(["A", "B", "C", ...]))
Set(arrayTypes; JSON(["A", "B", "C", ...].Value))
JSON(ForAll(arrayTypes.Value; ThisRecord.Value))
我目前正在考虑将数组作为逗号分隔的字符串传递,然后将其作为新值插入 JSON 中,但这将需要相当大地更改 Power-Automate 流程(我们实际上有多个数组要传递),我不想对这部分进行太多改变。
有谁知道如何从 Powerapps 集合/表/变量生成正确的 JSON 数组?
我在 StackOverflow 上发现的类似问题
Powerapps 中的嵌套表 - 解析 JSON 时删除“值”列(无答案)
如何在 Power Apps 中将库控件中的文本输入值作为 json 传递?(答案没有对当前输出进行任何更改)