Dela via


Bicep-felkod – BCP401

Det här felet uppstår när du använder uttryck för att definiera resurskroppar när operatorn Spread konverteras till en funktion. Det är en begränsning i JSON.

Felbeskrivning

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

Exempel

I följande exempel uppstår felet eftersom operatorn spread används för att definiera resurstexten:

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
        ]
      }
    }
  } : {})
}

Du kan åtgärda felet med hjälp av operatorn på den lägre nivån:

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ästa steg

Mer information om Bicep-fel och varningskoder finns i Bicep Core Diagnostics.