Logische CreateUiDefinition-Funktionen

Diese Funktionen können in bedingten Ausdrücken verwendet werden. Einige Funktionen unterstützen möglicherweise nicht alle JSON-Datentypen.

and

Gibt true zurück, wenn alle Parameter zu true ausgewertet werden. Diese Funktion unterstützt zwei oder mehr Parameter vom Typ „Boolesch“.

Das folgende Beispiel gibt truezurück:

"[and(equals(0, 0), equals('web', 'web'), less(1, 2))]"

Das folgende Beispiel gibt falsezurück:

"[and(equals(0, 0), greater(1, 2))]"

coalesce

Gibt den Wert des ersten Parameters ungleich NULL zurück. Diese Funktion unterstützt alle JSON-Datentypen.

Angenommen element1 und element2 sind nicht definiert. Das folgende Beispiel gibt "Contoso"zurück:

"[coalesce(steps('demoStep').element1, steps('demoStep').element2, 'Contoso')]"

Diese Funktion ist besonders nützlich im Kontext eines optionalen Aufrufs, der aufgrund einer Benutzeraktion nach dem Laden der Seite auftritt. Ein Beispiel hierfür ist, wenn die Einschränkungen, die für ein Feld in der Benutzeroberfläche festgelegt wurden, vom aktuell ausgewählten Wert eines anderen, anfänglich nicht sichtbaren Felds abhängen. In diesem Fall kann coalesce() verwendet werden, um zu ermöglichen, dass die Funktion zur Seitenladezeit syntaktisch gültig ist, während gleichzeitig der gewünschte Effekt erzielt wird, wenn der Benutzer mit dem Feld interagiert.

Beachten Sie dieses DropDown, das es dem Benutzer ermöglicht, aus mehreren verschiedenen Datenbanktypen auszuwählen:

{
    "name": "databaseType",
    "type": "Microsoft.Common.DropDown",
    "label": "Choose database type",
    "toolTip": "Choose database type",
    "defaultValue": "Oracle Database",
    "visible": "[bool(steps('section_database').connectToDatabase)]"
    "constraints": {
        "allowedValues": [
            {
                "label": "Azure Database for PostgreSQL",
                "value": "postgresql"
            },
            {
                "label": "Oracle Database",
                "value": "oracle"
            },
            {
                "label": "Azure SQL",
                "value": "sqlserver"
            }
        ],
        "required": true
    },

Um die Aktion eines anderen Felds bedingt an den aktuell ausgewählten Wert für dieses Felds zu binden, verwenden Sie coalesce(), wie hier gezeigt:

"regex": "[concat('^jdbc:', coalesce(steps('section_database').databaseConnectionInfo.databaseType, ''), '.*$')]",

Dies ist notwendig, da der databaseType anfänglich nicht sichtbar ist und daher keinen Wert besitzt. Dies bewirkt, dass der gesamte Ausdruck nicht ordnungsgemäß ausgewertet wird.

equals

Gibt true zurück, wenn beide Parameter denselben Typ und Wert aufweisen. Diese Funktion unterstützt alle JSON-Datentypen.

Das folgende Beispiel gibt truezurück:

"[equals(0, 0)]"

Das folgende Beispiel gibt truezurück:

"[equals('web', 'web')]"

Das folgende Beispiel gibt falsezurück:

"[equals('abc', ['a', 'b', 'c'])]"

greater

Gibt true zurück, wenn der erste Parameter streng größer als der zweite Parameter ist. Diese Funktion unterstützt nur Parameter vom Typ „Zahl“ und „Zeichenfolge“.

Das folgende Beispiel gibt falsezurück:

"[greater(1, 2)]"

Das folgende Beispiel gibt truezurück:

"[greater('9', '10')]"

greaterOrEquals

Gibt true zurück, wenn der erste Parameter im Vergleich zum zweiten Parameter größer oder gleich groß ist. Diese Funktion unterstützt nur Parameter vom Typ „Zahl“ und „Zeichenfolge“.

Das folgende Beispiel gibt truezurück:

"[greaterOrEquals(2, 2)]"

if

Gibt einen Wert abhängig davon zurück, ob eine Bedingung zutrifft oder nicht. Der erste Parameter ist die zu testende Bedingung. Der zweite Parameter ist der Wert für die Rückgabe, wenn die Bedingung „true“ ist. Der dritte Parameter ist der Wert für die Rückgabe, wenn die Bedingung „false“ ist.

Im folgenden Beispiel wird yes zurückgegeben.

"[if(equals(42, mul(6, 7)), 'yes', 'no')]"

less

Gibt true zurück, wenn der erste Parameter streng kleiner als der zweite Parameter ist. Diese Funktion unterstützt nur Parameter vom Typ „Zahl“ und „Zeichenfolge“.

Das folgende Beispiel gibt truezurück:

"[less(1, 2)]"

Das folgende Beispiel gibt falsezurück:

"[less('9', '10')]"

lessOrEquals

Gibt true zurück, wenn der erste Parameter im Vergleich zum zweiten Parameter kleiner oder gleich groß ist. Diese Funktion unterstützt nur Parameter vom Typ „Zahl“ und „Zeichenfolge“.

Das folgende Beispiel gibt truezurück:

"[lessOrEquals(2, 2)]"

not

Gibt true zurück, wenn der Parameter zu false ausgewertet wird. Diese Funktion unterstützt nur Parameter vom Typ „Boolesch“.

Das folgende Beispiel gibt truezurück:

"[not(false)]"

Das folgende Beispiel gibt falsezurück:

"[not(equals(0, 0))]"

oder

Gibt true zurück, wenn mindestens einer der Parameter zu true ausgewertet wird. Diese Funktion unterstützt zwei oder mehr Parameter vom Typ „Boolesch“.

Das folgende Beispiel gibt truezurück:

"[or(equals(0, 0), equals('web', 'web'), less(1, 2))]"

Das folgende Beispiel gibt truezurück:

"[or(equals(0, 0), greater(1, 2))]"

Nächste Schritte