Código diagnóstico del Bicep - BCP321

Este diagnóstico ocurre cuando el compilador espera un valor de un tipo pero tú proporcionas algo de otro tipo o nulo.

Description

Se espera un valor de tipo <esperado> pero el valor proporcionado es de tipo <> actual-tipo | nulo".

Nivel

Advertencia

Soluciones

Usa el tipo esperado. Si está seguro de que el valor nunca será NULL, use el operador null-forgiving para indicar al compilador que es seguro.

Ejemplos

El siguiente ejemplo eleva el diagnóstico porque first(accounts) posiblemente es nulo si el array pudiera estar vacío:

param storageCount int
param location string = resourceGroup().location

resource accounts 'Microsoft.Storage/storageAccounts@2023-05-01' = [for i in range(0, storageCount):{
  name: 'sa${i}'
  location: location
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'
}]

output firstOne object = first(accounts)

Puede corregir el diagnóstico mediante el operador null-forgiving:

param storageCount int
param location string = resourceGroup().location

resource accounts 'Microsoft.Storage/storageAccounts@2023-05-01' = [for i in range(0, storageCount):{
  name: 'sa${i}'
  location: location
  sku: {
    name: 'Standard_LRS'
  }
  kind: 'StorageV2'
}]

output firstOne object = first(accounts)!

Pasos siguientes

Para obtener más información sobre los diagnósticos de Bicep, consulte Diagnósticos principales de Bicep.