Logic Apps中SQL查询返回XML被转JSON后如何对接Dynamics 365
解决方案
不需要更换SQL执行动作,也不需要额外做JSON转XML处理,你需要的原始XML数据已经包含在SQL动作的返回结果中,可以直接引用。
具体操作方法
1. 确认XML的取值路径
你使用FOR XML语法查询返回的是无列名的单列结果,Logic Apps解析后该字段的键名为空字符串,完整取值表达式为:
outputs('替换为你的SQL动作实际名称')?['body']?['ResultSets']?['Table1']?[0]?['']
提示:表达式里的SQL动作名称要和你实际配置的「Execute a SQL Query」动作名称完全匹配,动作名中的空格会自动转换为下划线。
2. 配置HTTP POST请求
- 若请求体为纯XML:直接将上述表达式填入HTTP动作的「Body」字段,同时新增请求头:
Content-Type:application/xml
- 若需要将XML作为JSON结构的某字段值传递,直接把上述表达式赋值给对应字段即可。
特殊情况处理
如果在Logic Apps可视化界面的动态内容列表里找不到对应空键的字段,直接手动编写上述表达式填入对应位置即可,运行时会正确解析出完整的原始XML内容。
内容的提问来源于stack exchange,提问作者Tom Morris
相关产品推荐
相关产品推荐

