在等式表达式中使用变量

using a variable in an equals expression

我正在尝试在逻辑应用程序中做一些非常简单的事情: 我想检查一个变量是否等于给定的字符串,我正在使用这个表达式,但它总是给我 False

{
    "name": "task_name",
    "type": "string",
    "value": "MyTask"
}  


{
  "name": "equalsVar",
  type": "Boolean",
  "value": "@equals(variables('task_name'),'MyTask')"
}

equalsVar总是错误的,请解释我哪里做错了

这个表达式好像没有问题,请检查一下你的azure logic app设计是不是有问题

您可以在logic app code view中参考此逻辑应用程序代码:

{
    "definition": {
        "$schema": "<your-schema>",
        "actions": {
            "Initialize_variable": {
                "inputs": {
                    "variables": [
                        {
                            "name": "task_name",
                            "type": "string",
                            "value": "MyTask"
                        }
                    ]
                },
                "runAfter": {},
                "type": "InitializeVariable"
            },
            "Initialize_variable_2": {
                "inputs": {
                    "variables": [
                        {
                            "name": "equalsVar",
                            "type": "Boolean",
                            "value": "@equals(variables('task_name'),'MyTask')"
                        }
                    ]
                },
                "runAfter": {
                    "Initialize_variable": [
                        "Succeeded"
                    ]
                },
                "type": "InitializeVariable"
            }
        },
        "contentVersion": "1.0.0.0",
        "outputs": {},
        "parameters": {},
        "triggers": {
            "manual": {
                "inputs": {
                    "schema": {}
                },
                "kind": "Http",
                "type": "Request"
            }
        }
    },
    "parameters": {}
}

或者可以参考logic app designer中的这个设计: