Freigeben über


Bicep-Fehlercode – BCP401

Dieser Fehler tritt auf, wenn Sie Ausdrücke verwenden, um Ressourcentexte zu definieren, wenn der Spread Operator in eine Funktion konvertiert wird. Dies ist eine Einschränkung in JSON.

Fehlerbeschreibung

The spread operator "..." is not permitted in this location.

Beispiele

Im folgenden Beispiel wird der Fehler ausgelöst, da der spread Operator zum Definieren des Ressourcentexts verwendet wird:

param location string = resourceGroup().location
param addressPrefix string = '10.0.0.0/24'
 
resource vnet 'Microsoft.Network/virtualNetworks@2024-01-01' = {
  name: 'vnetName'
  location: location
 
  ...(addressPrefix != '' ? {
    properties: {
      addressSpace: {
        addressPrefixes: [
          addressPrefix
        ]
      }
    }
  } : {})
}

Sie können den Fehler beheben, indem Sie den Operator auf der unteren Ebene verwenden:

param location string = resourceGroup().location
param addressPrefix string = '10.0.0.0/24'
 
resource vnet 'Microsoft.Network/virtualNetworks@2024-01-01' = {
  name: 'vnetName'
  location: location
 
  properties: {
    addressSpace: {
      ...(addressPrefix != '' ? {
        addressPrefixes: [
          addressPrefix
        ]        
      } : {})
    }
  }
}

Nächste Schritte

Weitere Informationen zu Bicep-Fehler- und Warnungscodes finden Sie unter Bicep-Kerndiagnose.