Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Usługa Resource Manager udostępnia kilka funkcji do porównywania szablonu usługi Azure Resource Manager (szablon usługi ARM):
Napiwek
Zalecamy Bicep , ponieważ oferuje te same możliwości co szablony usługi ARM, a składnia jest łatwiejsza w użyciu. Aby dowiedzieć się więcej, zobacz łączenie operatorów logicznych i operatorów porównania .
Łączonej
coalesce(arg1, arg2, arg3, ...)
Zwraca pierwszą wartość inną niż null z parametrów. Puste ciągi, puste tablice i puste obiekty nie mają wartości null.
W Bicep użyj ?? operatora zamiast tego. Zobacz Coalesce ??.
Parametry
| Parametr | Wymagania | Type | Opis |
|---|---|---|---|
| arg1 | Tak | int, string, array lub object | Pierwsza wartość do przetestowania pod kątem wartości null. |
| więcej args | Nie. | int, string, array lub object | Więcej wartości do przetestowania pod kątem wartości null. |
Wartość zwracana
Wartość pierwszych parametrów innych niż null, które mogą być ciągiem, int, tablicą lub obiektem. Null, jeśli wszystkie parametry mają wartość null.
Przykład
Poniższy przykładowy szablon przedstawia dane wyjściowe z różnych zastosowań łączenia.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"objectToTest": {
"type": "object",
"defaultValue": {
"null1": null,
"null2": null,
"string": "default",
"int": 1,
"object": { "first": "default" },
"array": [ 1 ]
}
}
},
"resources": [
],
"outputs": {
"stringOutput": {
"type": "string",
"value": "[coalesce(parameters('objectToTest').null1, parameters('objectToTest').null2, parameters('objectToTest').string)]"
},
"intOutput": {
"type": "int",
"value": "[coalesce(parameters('objectToTest').null1, parameters('objectToTest').null2, parameters('objectToTest').int)]"
},
"objectOutput": {
"type": "object",
"value": "[coalesce(parameters('objectToTest').null1, parameters('objectToTest').null2, parameters('objectToTest').object)]"
},
"arrayOutput": {
"type": "array",
"value": "[coalesce(parameters('objectToTest').null1, parameters('objectToTest').null2, parameters('objectToTest').array)]"
},
"emptyOutput": {
"type": "bool",
"value": "[empty(coalesce(parameters('objectToTest').null1, parameters('objectToTest').null2))]"
}
}
}
Dane wyjściowe z poprzedniego przykładu z wartościami domyślnymi to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| stringOutput | String | domyślna |
| intOutput | Int | 1 |
| objectOutput | Objekt | {"first": "default"} |
| arrayOutput | Tablica | [1] |
| emptyOutput | Bool | Prawda |
equals
equals(arg1, arg2)
Sprawdza, czy dwie wartości są identyczne. Porównanie uwzględnia wielkość liter.
W Bicep użyj == operatora zamiast tego. Zobacz Equals ==.
Parametry
| Parametr | Wymagania | Type | Opis |
|---|---|---|---|
| arg1 | Tak | int, string, array lub object | Pierwsza wartość do sprawdzenia równości. |
| arg2 | Tak | int, string, array lub object | Druga wartość do sprawdzenia równości. |
Wartość zwracana
Zwraca wartość True , jeśli wartości są równe; w przeciwnym razie wartość False.
Uwagi
Funkcja equals jest często używana z elementem condition do testowania, czy zasób jest wdrażany.
{
"condition": "[equals(parameters('newOrExisting'),'new')]",
"type": "Microsoft.Storage/storageAccounts",
"name": "[variables('storageAccountName')]",
"apiVersion": "2022-09-01",
"location": "[resourceGroup().location]",
"sku": {
"name": "[variables('storageAccountType')]"
},
"kind": "Storage",
"properties": {}
}
Przykład
Poniższy przykład sprawdza różne typy wartości pod kątem równości. Wszystkie wartości domyślne zwracają wartość True.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstInt": {
"type": "int",
"defaultValue": 1
},
"secondInt": {
"type": "int",
"defaultValue": 1
},
"firstString": {
"type": "string",
"defaultValue": "demo"
},
"secondString": {
"type": "string",
"defaultValue": "Demo"
},
"firstArray": {
"type": "array",
"defaultValue": [ "a", "b" ]
},
"secondArray": {
"type": "array",
"defaultValue": [ "a", "b" ]
},
"firstObject": {
"type": "object",
"defaultValue": { "a": "b" }
},
"secondObject": {
"type": "object",
"defaultValue": { "a": "b" }
}
},
"resources": [
],
"outputs": {
"checkInts": {
"type": "bool",
"value": "[equals(parameters('firstInt'), parameters('secondInt') )]"
},
"checkStrings": {
"type": "bool",
"value": "[equals(parameters('firstString'), parameters('secondString'))]"
},
"checkArrays": {
"type": "bool",
"value": "[equals(parameters('firstArray'), parameters('secondArray'))]"
},
"checkObjects": {
"type": "bool",
"value": "[equals(parameters('firstObject'), parameters('secondObject'))]"
}
}
}
Dane wyjściowe z poprzedniego przykładu z wartościami domyślnymi to:
| Nazwisko | Typ | Wartość | Uwaga |
|---|---|---|---|
| checkInts | Bool | Prawda | |
| checkStrings | Bool | Fałsz | Wynikiem jest false to, że w porównaniu uwzględniana jest wielkość liter. |
| checkArrays | Bool | Prawda | |
| checkObjects | Bool | Prawda |
Poniższy przykładowy szablon używa wartości nie równej.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
],
"outputs": {
"checkNotEquals": {
"type": "bool",
"value": "[not(equals(1, 2))]"
}
}
}
Dane wyjściowe z poprzedniego przykładu to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| checkNotEquals | Bool | Prawda |
greater
greater(arg1, arg2)
Sprawdza, czy pierwsza wartość jest większa niż druga wartość.
W Bicep użyj > operatora zamiast tego. Zobacz Więcej niż >.
Parametry
| Parametr | Wymagania | Type | Opis |
|---|---|---|---|
| arg1 | Tak | int lub ciąg | Pierwsza wartość dla większego porównania. |
| arg2 | Tak | int lub ciąg | Druga wartość dla większego porównania. |
Wartość zwracana
Zwraca wartość True , jeśli pierwsza wartość jest większa niż druga wartość; w przeciwnym razie wartość False.
Przykład
Poniższy przykład sprawdza, czy jedna wartość jest większa niż druga.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstInt": {
"type": "int",
"defaultValue": 1
},
"secondInt": {
"type": "int",
"defaultValue": 2
},
"firstString": {
"type": "string",
"defaultValue": "A"
},
"secondString": {
"type": "string",
"defaultValue": "a"
}
},
"resources": [
],
"outputs": {
"checkInts": {
"type": "bool",
"value": "[greater(parameters('firstInt'), parameters('secondInt') )]"
},
"checkStrings": {
"type": "bool",
"value": "[greater(parameters('firstString'), parameters('secondString'))]"
}
}
}
Dane wyjściowe z poprzedniego przykładu z wartościami domyślnymi to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| checkInts | Bool | Fałsz |
| checkStrings | Bool | Prawda |
greaterOrEquals
greaterOrEquals(arg1, arg2)
Sprawdza, czy pierwsza wartość jest większa, czy równa drugiej wartości.
W Bicep użyj >= operatora zamiast tego. Zobacz Większe niż lub równe >=.
Parametry
| Parametr | Wymagania | Type | Opis |
|---|---|---|---|
| arg1 | Tak | int lub ciąg | Pierwsza wartość dla większego lub równego porównania. |
| arg2 | Tak | int lub ciąg | Druga wartość dla większego lub równego porównania. |
Wartość zwracana
Zwraca wartość True , jeśli pierwsza wartość jest większa lub równa drugiej wartości; w przeciwnym razie wartość False.
Przykład
Poniższy przykład sprawdza, czy jedna wartość jest większa, czy równa drugiej.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstInt": {
"type": "int",
"defaultValue": 1
},
"secondInt": {
"type": "int",
"defaultValue": 2
},
"firstString": {
"type": "string",
"defaultValue": "A"
},
"secondString": {
"type": "string",
"defaultValue": "a"
}
},
"resources": [
],
"outputs": {
"checkInts": {
"type": "bool",
"value": "[greaterOrEquals(parameters('firstInt'), parameters('secondInt') )]"
},
"checkStrings": {
"type": "bool",
"value": "[greaterOrEquals(parameters('firstString'), parameters('secondString'))]"
}
}
}
Dane wyjściowe z poprzedniego przykładu z wartościami domyślnymi to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| checkInts | Bool | Fałsz |
| checkStrings | Bool | Prawda |
less
less(arg1, arg2)
Sprawdza, czy pierwsza wartość jest mniejsza niż druga wartość.
W Bicep użyj < operatora zamiast tego. Zobacz Wartość Mniejsza niż <.
Parametry
| Parametr | Wymagania | Type | Opis |
|---|---|---|---|
| arg1 | Tak | int lub ciąg | Pierwsza wartość dla mniejszego porównania. |
| arg2 | Tak | int lub ciąg | Druga wartość dla mniejszego porównania. |
Wartość zwracana
Zwraca wartość True , jeśli pierwsza wartość jest mniejsza niż druga wartość; w przeciwnym razie wartość False.
Przykład
Poniższy przykład sprawdza, czy jedna wartość jest mniejsza niż druga.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstInt": {
"type": "int",
"defaultValue": 1
},
"secondInt": {
"type": "int",
"defaultValue": 2
},
"firstString": {
"type": "string",
"defaultValue": "A"
},
"secondString": {
"type": "string",
"defaultValue": "a"
}
},
"resources": [
],
"outputs": {
"checkInts": {
"type": "bool",
"value": "[less(parameters('firstInt'), parameters('secondInt') )]"
},
"checkStrings": {
"type": "bool",
"value": "[less(parameters('firstString'), parameters('secondString'))]"
}
}
}
Dane wyjściowe z poprzedniego przykładu z wartościami domyślnymi to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| checkInts | Bool | Prawda |
| checkStrings | Bool | Fałsz |
lessOrEquals
lessOrEquals(arg1, arg2)
Sprawdza, czy pierwsza wartość jest mniejsza, czy równa drugiej wartości.
W Bicep użyj <= operatora zamiast tego. Zobacz Mniejsze niż lub równe <=.
Parametry
| Parametr | Wymagania | Type | Opis |
|---|---|---|---|
| arg1 | Tak | int lub ciąg | Pierwsza wartość dla porównania mniejszego lub równego. |
| arg2 | Tak | int lub ciąg | Druga wartość dla porównania mniejszego lub równego. |
Wartość zwracana
Zwraca wartość True , jeśli pierwsza wartość jest mniejsza lub równa drugiej wartości; w przeciwnym razie wartość False.
Przykład
Poniższy przykład sprawdza, czy jedna wartość jest mniejsza, czy równa drugiej.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"firstInt": {
"type": "int",
"defaultValue": 1
},
"secondInt": {
"type": "int",
"defaultValue": 2
},
"firstString": {
"type": "string",
"defaultValue": "A"
},
"secondString": {
"type": "string",
"defaultValue": "a"
}
},
"resources": [
],
"outputs": {
"checkInts": {
"type": "bool",
"value": "[lessOrEquals(parameters('firstInt'), parameters('secondInt') )]"
},
"checkStrings": {
"type": "bool",
"value": "[lessOrEquals(parameters('firstString'), parameters('secondString'))]"
}
}
}
Dane wyjściowe z poprzedniego przykładu z wartościami domyślnymi to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| checkInts | Bool | Prawda |
| checkStrings | Bool | Fałsz |
Następne kroki
- Aby zapoznać się z opisem sekcji w szablonie usługi ARM, zobacz Omówienie struktury i składni szablonów usługi ARM.