Delen via


Variabele instellen

VAN TOEPASSING OP: Alle API Management-lagen

Het set-variable beleid declareert een contextvariabele en wijst deze toe aan een waarde die is opgegeven via een expressie of een letterlijke tekenreeks. Als de expressie een letterlijke waarde bevat, wordt deze geconverteerd naar een tekenreeks en het type van de waarde.System.String

Notitie

Stel de elementen en onderliggende elementen van het beleid in de volgorde in die in de beleidsverklaring is opgegeven. Meer informatie over het instellen of bewerken van API Management-beleid.

Beleidsinstructie

<set-variable name="variable name" value="Expression | String literal" />

Kenmerken

Kenmerk Beschrijving Vereist
naam De naam van de variabele. Beleidsexpressies zijn niet toegestaan. Ja
waarde De waarde van de variabele. Dit kan een expressie of een letterlijke waarde zijn. Beleidsexpressies zijn toegestaan. Ja

Gebruik

Toegestane typen

Expressies die in het set-variable beleid worden gebruikt, moeten een van de volgende basistypen retourneren.

  • System.Boolean
  • System.SByte
  • System.Byte
  • System.UInt16
  • System.UInt32
  • System.UInt64
  • System.Int16
  • System.Int32
  • System.Int64
  • System.Decimal
  • System.Single
  • System.Double
  • System.Guid
  • System.String
  • System.Char
  • System.DateTime
  • System.TimeSpan
  • System.Byte?
  • System.UInt16?
  • System.UInt32?
  • System.UInt64?
  • System.Int16?
  • System.Int32?
  • System.Int64?
  • System.Decimal?
  • System.Single?
  • System.Double?
  • System.Guid?
  • System.String?
  • System.Char?
  • System.DateTime?

Opmerking

In het volgende voorbeeld ziet u een set-variable beleid in de sectie inkomend verkeer. Met dit setvariabelebeleid maakt u een isMobile Booleaanse contextvariabele die is ingesteld op waar als de User-Agent aanvraagheader de tekst iPad bevat of iPhone.

<set-variable name="IsMobile" value="@(context.Request.Headers.GetValueOrDefault("User-Agent","").Contains("iPad") || context.Request.Headers.GetValueOrDefault("User-Agent","").Contains("iPhone"))" />

Zie voor meer informatie over het werken met beleid: