Condividi tramite


Qualsiasi funzione per Bicep

Bicep supporta una funzione chiamata any() per risolvere gli errori di tipo nel sistema di tipi Bicep. Questa funzione viene usata quando il formato del valore specificato non corrisponde a quello previsto dal sistema di tipi. Ad esempio, se la proprietà richiede un numero, ma è necessario specificarla come stringa, ad '0.5'esempio . Usare la any() funzione per eliminare l'errore segnalato dal sistema di tipi.

Questa funzione non esiste nel runtime del modello di Azure Resource Manager. Viene usato solo da Bicep e non viene generato nel codice JSON per il modello compilato.

Nota

Per risolvere gli errori di tipo, segnalare quando sono mancanti o non corretti i tipi necessari per usare la any() funzione . Aggiungere i dettagli al problema di convalida/imprecisioni del tipo mancante in GitHub.

qualsiasi

any(value)

Restituisce un valore compatibile con qualsiasi tipo di dati.

Spazio dei nomi: sys.

Parametri

Parametro Richiesto Type Descrizione
value tutti i tipi Valore da convertire in un tipo compatibile.

Valore restituito

Valore in un formato compatibile con qualsiasi tipo di dati.

Esempi

Nell'esempio seguente viene illustrato come usare la any() funzione per fornire valori numerici come stringhe.

resource wpAci 'Microsoft.ContainerInstance/containerGroups@2023-05-01' = {
  name: 'wordpress-containerinstance'
  location: location
  properties: {
    containers: [
      {
        name: 'wordpress'
        properties: {
          ...
          resources: {
            requests: {
              cpu: any('0.5')
              memoryInGB: any('0.7')
            }
          }
        }
      }
    ]
  }
}

La funzione funziona su qualsiasi valore assegnato in Bicep. Nell'esempio seguente viene any() usato con un'espressione ternaria come argomento.

publicIPAddress: any((pipId == '') ? null : {
  id: pipId
})

Passaggi successivi

Per usi più complessi della any() funzione, vedere gli esempi seguenti: