我使用Office 365发送电子邮件连接器发送电子邮件给多个用户。
电子邮件地址的值由参数和如下表达式之一确定:连接器的Json视图
"Send_an_email_3": {
"inputs": {
"body": {
"Body": "Test",
"Cc": "@concat([parameters('email-address')],';',@{items('For_each_6')?['ChallengedBy']})",
"IsHtml": true,
"Subject": "Test" "To": "[parameters('dtf-email-address')]"
},但是,CC选项中的@concat状态不起作用。
"Cc":“@concat(参数(‘email-address’),';',@{items('For_each_6')?'ChallengedBy'}
错误信息:
:“模板验证失败:'1‘行的模板操作'Send_an_email_3’和列'130951‘无效:\”模板语言表达式参数(’email-address‘);@items('For_each_6')?'ChallengedBy';’无效:字符串';‘在位置'36’是不期望的。\‘。“参数值被确定,但表达式不变,它应该计算为是针对主题行。”。

发布于 2018-08-10 06:24:47
根据我的测试,您可以尝试使用以下代码进行测试。
"Cc": "@{concat(parameters('email-address'),';',items('For_each_6')?['ChallengedBy'])}"
发布于 2018-08-15 01:51:35
如果我正确理解,您将尝试将ARM模板参数[parameters('email-address')]传递给Logic定义语言函数@concat()。在部署时添加要解析的ARM模板表达式和函数,这样会导致逻辑应用程序表达式和函数在执行时被评估,这可能会很麻烦。如果您在Logic中有字符串函数,比如@concat(),它接受从ARM模板表达式(如[parameters()]或[variables()] )获得的值,事情就会变得更加困难。在运行时,@concat()函数期望类似于
"Cc": "@concat('youremail@domain.com',';',@{items('For_each_6')?['ChallengedBy']}这不是当前使用ARM模板参数获得的结果。
一种方法是避免在LogicApp工作流定义中使用ARM模板参数。也就是说,创建一个Logic参数,它从ARM模板参数中获取值,然后在您的@concat()函数中使用Logic参数。
你可以在这篇文章中读到关于如何做到这一点的全部解释。
https://platform.deloitte.com.au/articles/preparing-azure-logic-apps-for-cicd
HTH
发布于 2019-07-10 08:11:24
在ARM JSON模板中尝试下面的表达式,
[concat(parameters('email-address')],'';'','@{items(''For_each_6'')?[''ChallengedBy'']}')]如果你能提供"CC“字段的原始源代码,那就更有帮助了。
https://stackoverflow.com/questions/51768293
复制相似问题