Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Deze diagnose treedt op wanneer u een waarde van een niet-overeenkomend gegevenstype toewijst.
Description
Er wordt een waarde van het type <data-type> verwacht, maar de opgegeven waarde is van het type <data-type>.
Level
Waarschuwing / Fout
Oplossing
Gebruik het verwachte gegevenstype. Als de opgegeven waarde een token is, plaatst u deze in de any()-functie om het probleem te verhelpen.
Voorbeelden
In het volgende voorbeeld wordt de diagnose opgehaald omdat het verwachte gegevenstype een tekenreeks is. De werkelijke opgegeven waarde is een geheel getal:
var myValue = 5
output myString string = myValue
U kunt de diagnose oplossen door een tekenreekswaarde op te geven:
var myValue = '5'
output myString string = myValue
In Azure Bicep ziet u fout BCP033 tijdens het gebruik van deployment().location als een standaardwaarde voor een parameter die wordt beperkt door een @allowed decorator is een veelvoorkomend scenario. Deze fout treedt op vanwege het strikte mechanisme voor de compilatietijd van Bicep. Voorbeeld:
targetScope = 'subscription'
@allowed([
'southcentralus'
'eastus2euap'
])
param location string = deployment().location
Als u het gemak van standaardinstelling voor de metagegevenslocatie van de huidige implementatie wilt behouden, kunt u de controle van het type compileertijd omzeilen met behulp van de functie any() van Bicep Bicep. Deze functie vertelt de compiler dat de expressie wordt behandeld als losjes getypt:
targetScope = 'subscription'
@allowed([
'southcentralus'
'eastus2euap'
])
// The any() function suppresses the BCP033 type-mismatch error
param location string = any(deployment().location)
Als uw implementatie strikt is gebonden aan één regio, kunt u voorkomen dat u de dynamische deployment().location metagegevens helemaal gebruikt en expliciet een standaardwaarde toewijst die in uw lijst aanwezig is.
Volgende stappen
Zie Bicep-kerndiagnose voor meer informatie over Bicep-diagnostische gegevens.