如果条件为真,我如何将 属性 组合成 return int(0) 而如果条件为假,则不构成 return 任何东西?

How can i form the property in compose to return int(0) if condition is true and not return anything if condition is false?

如果为真,我如何将此表达式形成为 return int 值 0,如果为假,则不 return 属性?仓库事件是一个数组,属性 在一个组合中。

表达式:

if(contains(variables('WareHouseEvent'), 'OB_2910'), int(0), <not return anything)

其中一个解决方法是,您可以使用 Condition 连接器,当满足上述条件时,它会执行 true 块,否则它会执行 false。从那里您可以使用相同的撰写内容。

这是逻辑应用程序的屏幕截图 -

输出:-

第一个答案的替代方法是始终添加然后在事后删除它。

这是一个示例,您可以复制到自己的租户中进行测试。

{
    "definition": {
        "$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
        "actions": {
            "Compose_JSON_Object": {
                "inputs": {
                    "AnotherProperty": "Another Value",
                    "TestProperty": "@variables('Data')"
                },
                "runAfter": {
                    "Initialize_Integer": [
                        "Succeeded"
                    ]
                },
                "type": "Compose"
            },
            "Initialize_Integer": {
                "inputs": {
                    "variables": [
                        {
                            "name": "Data",
                            "type": "integer",
                            "value": 0
                        }
                    ]
                },
                "runAfter": {},
                "type": "InitializeVariable"
            },
            "New_JSON_Object": {
                "inputs": {
                    "variables": [
                        {
                            "name": "New Object",
                            "type": "object",
                            "value": "@if(equals(variables('Data'), 1), removeProperty(outputs('Compose_JSON_Object'), 'TestProperty'), outputs('Compose_JSON_Object'))"
                        }
                    ]
                },
                "runAfter": {
                    "Compose_JSON_Object": [
                        "Succeeded"
                    ]
                },
                "type": "InitializeVariable"
            }
        },
        "contentVersion": "1.0.0.0",
        "outputs": {},
        "parameters": {},
        "triggers": {
            "manual": {
                "conditions": [],
                "inputs": {},
                "kind": "Http",
                "type": "Request"
            }
        }
    },
    "parameters": {}
}

我在顶部有一个整数变量,它存储值 1 或 0。

然后在我的撰写中,我将该值添加到撰写语句中的 属性。

然后在此之下,我使用表达式设置了一个带有(可能)更新对象的新变量,以确定是否应删除添加的 属性。

您只需要用您的表达式调整 IF 语句的条件部分。

if(equals(variables('Data'), 1), removeProperty(outputs('Compose_JSON_Object'), 'TestProperty'), outputs('Compose_JSON_Object'))

属性 将根据 Data 变量的值被删除。

已删除

保留