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
Bicep jest zalecany, 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 bool funkcję logiczną i operatory logiczne .
oraz
and(arg1, arg2, ...)
Sprawdza, czy wszystkie wartości parametrów są prawdziwe.
Funkcja nie jest obsługiwana and w Bicep.
Zamiast tego użyj operatora &&.
Parametry
| Parametr | Wymagania | Typ | Opis |
|---|---|---|---|
| arg1 | Tak | boolean | Pierwsza wartość do sprawdzenia, czy jest ona prawdziwa. |
| arg2 | Tak | boolean | Druga wartość do sprawdzenia, czy jest ona prawdziwa. |
| więcej argumentów | Nie. | boolean | Więcej argumentów, aby sprawdzić, czy są prawdziwe. |
Wartość zwracana
Zwraca wartość True , jeśli wszystkie wartości są prawdziwe; w przeciwnym razie wartość False.
Przykłady
W poniższym przykładzie pokazano, jak używać logical funkcji:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"andExampleOutput": {
"type": "bool",
"value": "[and(bool('true'), bool('false'))]"
},
"orExampleOutput": {
"type": "bool",
"value": "[or(bool('true'), bool('false'))]"
},
"notExampleOutput": {
"type": "bool",
"value": "[not(bool('true'))]"
}
}
}
Dane wyjściowe z poprzedniego przykładu to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| andExampleOutput | Bool | Fałsz |
| lubExampleOutput | Bool | Prawda |
| notExampleOutput | Bool | Fałsz |
bool
bool(arg1)
Konwertuje parametr na wartość logiczną.
W Bicep użyj funkcji logicznej bool .
Parametry
| Parametr | Wymagania | Typ | Opis |
|---|---|---|---|
| arg1 | Tak | ciąg lub int | Wartość, która ma być konwertowana na wartość logiczną. |
Wartość zwracana
Wartość logiczna przekonwertowanej wartości.
Uwagi
Możesz również użyć wartości true() i false(), aby uzyskać wartości logiczne.
Przykłady
W poniższym przykładzie pokazano, jak używać z bool ciągiem lub liczbą całkowitą:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"trueString": {
"type": "bool",
"value": "[bool('true')]"
},
"falseString": {
"type": "bool",
"value": "[bool('false')]"
},
"trueInt": {
"type": "bool",
"value": "[bool(1)]"
},
"falseInt": {
"type": "bool",
"value": "[bool(0)]"
}
}
}
Dane wyjściowe wartości domyślnych z poprzedniego przykładu to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| trueString | Bool | Prawda |
| falseString | Bool | Fałsz |
| trueInt | Bool | Prawda |
| falseInt | Bool | Fałsz |
fałsz
false()
Zwraca wartość false.
Funkcja false nie jest dostępna w Bicep. Zamiast tego użyj słowa kluczowego false .
Parametry
Funkcja false nie akceptuje żadnych parametrów.
Wartość zwracana
Wartość logiczna, która zawsze jest fałszywa.
Przykład
Poniższy przykład zwraca wartość fałszywą danych wyjściowych:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"falseOutput": {
"type": "bool",
"value": "[false()]"
}
}
}
Dane wyjściowe z poprzedniego przykładu to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| falseOutput | Bool | Fałsz |
jeżeli
if(condition, trueValue, falseValue)
Zwraca wartość na podstawie tego, czy warunek ma wartość true lub false.
Funkcja nie jest obsługiwana if w Bicep.
Użyj operatora ?: zamiast tego.
Parametry
| Parametr | Wymagania | Typ | Opis |
|---|---|---|---|
| condition | Tak | boolean | Wartość do sprawdzenia, czy jest to prawda, czy fałsz. |
| trueValue | Tak | ciąg, liczba int, obiekt lub tablica | Wartość, która ma być zwracana, gdy warunek ma wartość true. |
| falseValue | Tak | ciąg, liczba int, obiekt lub tablica | Wartość, która ma być zwracana, gdy warunek ma wartość false. |
Wartość zwracana
Zwraca drugi parametr, gdy pierwszy parametr ma wartość True. W przeciwnym razie zwraca trzeci parametr.
Uwagi
Jeśli warunek ma wartość True, obliczana jest tylko wartość true. Jeśli warunek ma wartość False, obliczana jest tylko wartość false. Za pomocą if funkcji można uwzględnić wyrażenia, które są tylko warunkowo prawidłowe. Można na przykład odwołać się do zasobu, który istnieje pod jednym warunkiem, ale nie w innym warunku. Przykład warunkowego obliczania wyrażeń przedstawiono w poniższej sekcji.
Należy pamiętać, że powyższa reguła ma zastosowanie tylko wtedy, gdy warunek można ocenić na początku procesu wdrażania szablonu. Na przykład nie można użyć elementu reference() w warunku .
Przykłady
W poniższym przykładzie pokazano, jak używać if funkcji:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
],
"outputs": {
"yesOutput": {
"type": "string",
"value": "[if(equals('a', 'a'), 'yes', 'no')]"
},
"noOutput": {
"type": "string",
"value": "[if(equals('a', 'b'), 'yes', 'no')]"
},
"objectOutput": {
"type": "object",
"value": "[if(equals('a', 'a'), json('{\"test\": \"value1\"}'), json('null'))]"
}
}
}
Dane wyjściowe z poprzedniego przykładu to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| yesOutput | String | tak |
| noOutput | String | nie |
| objectOutput | Objekt | { "test": "value1" } |
Poniższy przykładowy szablon pokazuje, jak używać tej funkcji z wyrażeniami, które są tylko warunkowo prawidłowe.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"type": "string"
},
"location": {
"type": "string"
},
"logAnalytics": {
"type": "string",
"defaultValue": ""
}
},
"resources": [
{
"condition": "[not(empty(parameters('logAnalytics')))]",
"type": "Microsoft.Compute/virtualMachines/extensions",
"apiVersion": "2025-04-01",
"name": "[format('{0}/omsOnboarding', parameters('vmName'))]",
"location": "[parameters('location')]",
"properties": {
"publisher": "Microsoft.EnterpriseCloud.Monitoring",
"type": "MicrosoftMonitoringAgent",
"typeHandlerVersion": "1.0",
"autoUpgradeMinorVersion": true,
"settings": {
"workspaceId": "[if(not(empty(parameters('logAnalytics'))), reference(parameters('logAnalytics'), '2015-11-01-preview').customerId, null())]"
},
"protectedSettings": {
"workspaceKey": "[if(not(empty(parameters('logAnalytics'))), listKeys(parameters('logAnalytics'), '2015-11-01-preview').primarySharedKey, null())]"
}
}
}
],
"outputs": {
"mgmtStatus": {
"type": "string",
"value": "[if(not(empty(parameters('logAnalytics'))), 'Enabled monitoring for VM!', 'Nothing to enable')]"
}
}
}
not
not(arg1)
Konwertuje wartość logiczną na wartość przeciwną.
Funkcja nie jest obsługiwana not w Bicep.
Zamiast tego użyj operatora ! .
Parametry
| Parametr | Wymagania | Typ | Opis |
|---|---|---|---|
| arg1 | Tak | boolean | Wartość do konwersji. |
Wartość zwracana
Zwraca wartość True , gdy parametr ma wartość False. Zwraca wartość False , gdy parametr ma wartość True.
Przykłady
W poniższym przykładzie pokazano, jak używać logical funkcji:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"andExampleOutput": {
"type": "bool",
"value": "[and(bool('true'), bool('false'))]"
},
"orExampleOutput": {
"type": "bool",
"value": "[or(bool('true'), bool('false'))]"
},
"notExampleOutput": {
"type": "bool",
"value": "[not(bool('true'))]"
}
}
}
Dane wyjściowe z poprzedniego przykładu to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| andExampleOutput | Bool | Fałsz |
| lubExampleOutput | Bool | Prawda |
| notExampleOutput | Bool | Fałsz |
W poniższym przykładzie użyto wartości notz równościami:
{
"$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 |
lub
or(arg1, arg2, ...)
Sprawdza, czy jakakolwiek wartość parametru ma wartość true.
Funkcja nie jest obsługiwana or w Bicep.
Zamiast tego użyj operatora ||.
Parametry
| Parametr | Wymagania | Typ | Opis |
|---|---|---|---|
| arg1 | Tak | boolean | Pierwsza wartość do sprawdzenia, czy jest ona prawdziwa. |
| arg2 | Tak | boolean | Druga wartość do sprawdzenia, czy jest ona prawdziwa. |
| więcej argumentów | Nie. | boolean | Więcej argumentów, aby sprawdzić, czy są prawdziwe. |
Wartość zwracana
Zwraca wartość True , jeśli jakakolwiek wartość ma wartość true; w przeciwnym razie wartość False.
Przykłady
W poniższym przykładzie pokazano, jak używać logical funkcji:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"andExampleOutput": {
"type": "bool",
"value": "[and(bool('true'), bool('false'))]"
},
"orExampleOutput": {
"type": "bool",
"value": "[or(bool('true'), bool('false'))]"
},
"notExampleOutput": {
"type": "bool",
"value": "[not(bool('true'))]"
}
}
}
Dane wyjściowe z poprzedniego przykładu to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| andExampleOutput | Bool | Fałsz |
| lubExampleOutput | Bool | Prawda |
| notExampleOutput | Bool | Fałsz |
prawda
true()
Zwraca wartość true.
Funkcja true nie jest dostępna w Bicep. Zamiast tego użyj słowa kluczowego true .
Parametry
Funkcja true nie akceptuje żadnych parametrów.
Wartość zwracana
Wartość logiczna, która zawsze jest prawdziwa.
Przykład
Poniższy przykład zwraca wartość true output:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"trueOutput": {
"type": "bool",
"value": "[true()]"
}
}
}
Dane wyjściowe z poprzedniego przykładu to:
| Nazwisko | Typ | Wartość |
|---|---|---|
| trueOutput | Bool | Prawda |
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.