我正在尝试使用Azure Logic Apps在存储队列中创建消息,但我终生无法解决如何做到这一点。我设法使用When an item is modified (V2)
触发器来触发Logic App,并且效果很好。
我已经使用Azure Queues -> Put a message on a queue
操作在存储队列中成功创建了一条消息,非常简单!
但是,消息只是按顺序排列的每个数据列,没有任何结构,例如
1Andy Was Ere!��������1
我想做的是添加一个步骤,其中Logic App将从SQL数据库中提取的数据格式化为JSON对象,然后在存储队列中创建消息,因此我得到了例如
{
"Id": 1,
"Data": "Andy Was Ere!",
"RowVersion": "��������",
"Status": 1
}
我希望有一个数据适配器,它可以让我将SQL数据库中的输入字段转换为JSON表示形式,一旦您确定如何做到这一点,我相信这很简单,但是我找不到实际的例子完成了吗?
答案 0 :(得分:1)
按照通常的方式,在发布问题后,我想出了一个解决方案,它可能不是最好的解决方案,因此,我很高兴听到任何其他反馈。
第1步
创建您的SQL Server -> When an item is modified (V2)
触发器。
第2步
添加Execute Javascript Code
操作并添加JSON对象转换代码,例如
return {
"id": workflowContext.trigger.outputs.body.Id,
"myData": workflowContext.trigger.outputs.body.MyData,
"status": workflowContext.trigger.outputs.body.Status
}
第3步
添加一个Data -> Compose
动作,以接受JS动作的输入。
第4步
添加Azure队列->将消息放入队列操作中,该消息是上述“撰写”操作的输出
在实施该测试的过程中,我得到的答案是,如果我触发了多个记录,那么每次更改都会引发一个触发器。