CreateUiDefinition, funkcje logiczne
Te funkcje mogą być używane w wyrażeniach warunkowych. Niektóre funkcje mogą nie obsługiwać wszystkich typów danych JSON.
oraz
Zwraca wartość true
, jeśli wszystkie parametry są obliczane na true
wartość . Ta funkcja obsługuje co najmniej dwa parametry tylko typu wartość logiczna.
Poniższy przykład zwraca wartość true
:
"[and(equals(0, 0), equals('web', 'web'), less(1, 2))]"
Poniższy przykład zwraca wartość false
:
"[and(equals(0, 0), greater(1, 2))]"
Łączonej
Zwraca wartość pierwszego parametru innego niż null. Ta funkcja obsługuje wszystkie typy danych JSON.
Przyjmij element1
i element2
są niezdefiniowane. Poniższy przykład zwraca wartość "Contoso"
:
"[coalesce(steps('demoStep').element1, steps('demoStep').element2, 'Contoso')]"
Ta funkcja jest szczególnie przydatna w kontekście opcjonalnego wywołania, które ma miejsce z powodu akcji użytkownika po załadowaniu strony. Przykładem jest to, że ograniczenia umieszczone na jednym polu w interfejsie użytkownika zależą od aktualnie wybranej wartości innego, początkowo nie widocznego pola. W takim przypadku można użyć funkcji, coalesce()
aby zezwolić na składnię funkcji w czasie ładowania strony przy odpowiednim wpływie, gdy użytkownik wchodzi w interakcję z polem.
Rozważmy ten DropDown
element , który umożliwia użytkownikowi wybór spośród kilku różnych typów baz danych:
{
"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
},
Aby warunek akcji innego pola w bieżącej wybranej wartości tego pola, użyj polecenia coalesce()
, jak pokazano poniżej:
"regex": "[concat('^jdbc:', coalesce(steps('section_database').databaseConnectionInfo.databaseType, ''), '.*$')]",
Ta funkcja jest niezbędna, ponieważ databaseType
początkowo nie jest widoczna i dlatego nie ma wartości, co powoduje, że całe wyrażenie nie zostanie poprawnie ocenione.
equals
Zwraca wartość true
, jeśli oba parametry mają ten sam typ i wartość. Ta funkcja obsługuje wszystkie typy danych JSON.
Poniższy przykład zwraca wartość true
:
"[equals(0, 0)]"
Poniższy przykład zwraca wartość true
:
"[equals('web', 'web')]"
Poniższy przykład zwraca wartość false
:
"[equals('abc', ['a', 'b', 'c'])]"
greater
Zwraca wartość true
, jeśli pierwszy parametr jest ściśle większy niż drugi parametr. Ta funkcja obsługuje tylko parametry typu liczba i ciąg.
Poniższy przykład zwraca wartość false
:
"[greater(1, 2)]"
Poniższy przykład zwraca wartość true
:
"[greater('9', '10')]"
greaterOrEquals
Zwraca true
wartość , jeśli pierwszy parametr jest większy lub równy drugiemu parametrowi. Ta funkcja obsługuje tylko parametry typu liczba i ciąg.
Poniższy przykład zwraca wartość true
:
"[greaterOrEquals(2, 2)]"
jeżeli
Zwraca wartość na podstawie tego, czy warunek ma wartość true, czy false. Pierwszy parametr jest warunkiem do przetestowania. Drugi parametr to wartość, która ma być zwracana, jeśli warunek ma wartość true. Trzeci parametr to wartość, która ma być zwracana, jeśli warunek ma wartość false.
Poniższy przykład zwraca wartość yes
.
"[if(equals(42, mul(6, 7)), 'yes', 'no')]"
less
Zwraca wartość true
, jeśli pierwszy parametr jest ściśle mniejszy niż drugi parametr. Ta funkcja obsługuje tylko parametry typu liczba i ciąg.
Poniższy przykład zwraca wartość true
:
"[less(1, 2)]"
Poniższy przykład zwraca wartość false
:
"[less('9', '10')]"
lessOrEquals
Zwraca true
wartość , jeśli pierwszy parametr jest mniejszy lub równy drugiemu parametrowi. Ta funkcja obsługuje tylko parametry typu liczba i ciąg.
Poniższy przykład zwraca wartość true
:
"[lessOrEquals(2, 2)]"
not
Zwraca wartość true
, jeśli parametr zwróci wartość false
. Ta funkcja obsługuje tylko parametry typu Wartość logiczna.
Poniższy przykład zwraca wartość true
:
"[not(false)]"
Poniższy przykład zwraca wartość false
:
"[not(equals(0, 0))]"
lub
Zwraca wartość true
, jeśli co najmniej jeden z parametrów true
zwróci wartość . Ta funkcja obsługuje co najmniej dwa parametry tylko typu Wartość logiczna.
Poniższy przykład zwraca wartość true
:
"[or(equals(0, 0), equals('web', 'web'), less(1, 2))]"
Poniższy przykład zwraca wartość true
:
"[or(equals(0, 0), greater(1, 2))]"
Następne kroki
- Aby zapoznać się z wprowadzeniem do usługi Azure Resource Manager, zobacz Omówienie usługi Azure Resource Manager.