Rolconfiguratie-instellingen beschikbaar maken als een omgevingsvariabele met XPath

Belangrijk

Cloud Services (klassiek) is nu afgeschaft voor nieuwe klanten en wordt op 31 augustus 2024 voor alle klanten buiten gebruik gesteld. Nieuwe implementaties moeten gebruikmaken van het nieuwe implementatiemodel op basis van Azure Resource Manager Azure Cloud Services (uitgebreide ondersteuning).

In het definitiebestand cloudservicewerknemer of webrolservice kunt u runtimeconfiguratiewaarden als omgevingsvariabelen weergeven. De volgende XPath-waarden worden ondersteund (die overeenkomen met API-waarden).

Deze XPath-waarden zijn ook beschikbaar via de bibliotheek Microsoft.WindowsAzure.ServiceRuntime .

App die wordt uitgevoerd in emulator

Geeft aan dat de app wordt uitgevoerd in de emulator.

Type Voorbeeld
Xpath xpath="/RoleEnvironment/Deployment/@emulated"
Code var x = RoleEnvironment.IsEmulated;

Implementatie-id

Hiermee haalt u de implementatie-id voor het exemplaar op.

Type Voorbeeld
Xpath xpath="/RoleEnvironment/Deployment/@id"
Code var deploymentId = RoleEnvironment.DeploymentId;

Rol-id

Haalt de huidige rol-id voor het exemplaar op.

Type Voorbeeld
Xpath xpath="/RoleEnvironment/CurrentInstance/@id"
Code var id = RoleEnvironment.CurrentRoleInstance.Id;

Domein bijwerken

Hiermee haalt u het updatedomein van het exemplaar op.

Type Voorbeeld
Xpath xpath="/RoleEnvironment/CurrentInstance/@updateDomain"
Code var ud = RoleEnvironment.CurrentRoleInstance.UpdateDomain;

Foutdomein

Haalt het foutdomein van het exemplaar op.

Type Voorbeeld
Xpath xpath="/RoleEnvironment/CurrentInstance/@faultDomain"
Code var fd = RoleEnvironment.CurrentRoleInstance.FaultDomain;

Rolnaam

Hiermee haalt u de rolnaam van de exemplaren op.

Type Voorbeeld
Xpath xpath="/RoleEnvironment/CurrentInstance/@roleName"
Code var rname = RoleEnvironment.CurrentRoleInstance.Role.Name;

Configuratie-instelling

Hiermee wordt de waarde van de opgegeven configuratie-instelling opgehaald.

Type Voorbeeld
Xpath xpath="/RoleEnvironment/CurrentInstance/ConfigurationSettings/ConfigurationSetting[@name='Setting1']/@value"
Code var setting = RoleEnvironment.GetConfigurationSettingValue("Setting1");

Pad naar lokale opslag

Hiermee haalt u het lokale opslagpad voor het exemplaar op.

Type Voorbeeld
Xpath xpath="/RoleEnvironment/CurrentInstance/LocalResources/LocalResource[@name='LocalStore1']/@path"
Code var localResourcePath = RoleEnvironment.GetLocalResource("LocalStore1"). RootPath;

Lokale opslaggrootte

Hiermee haalt u de grootte van de lokale opslag voor het exemplaar op.

Type Voorbeeld
Xpath xpath="/RoleEnvironment/CurrentInstance/LocalResources/LocalResource[@name='LocalStore1']/@sizeInMB"
Code var localResourceSizeInMB = RoleEnvironment.GetLocalResource("LocalStore1"). MaximumSizeInMegabytes;

Eindpuntprotocol

Haalt het eindpuntprotocol voor het exemplaar op.

Type Voorbeeld
Xpath xpath="/RoleEnvironment/CurrentInstance/Endpoints/Endpoint[@name='Endpoint1']/@protocol"
Code var prot = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"]. Protocol;

Ip-adres van eindpunt

Hiermee haalt u het IP-adres van het opgegeven eindpunt op.

Type Voorbeeld
Xpath xpath="/RoleEnvironment/CurrentInstance/Endpoints/Endpoint[@name='Endpoint1']/@address"
Code var address = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"]. IPEndpoint.Address

Eindpuntpoort

Haalt de eindpuntpoort voor het exemplaar op.

Type Voorbeeld
Xpath xpath="/RoleEnvironment/CurrentInstance/Endpoints/Endpoint[@name='Endpoint1']/@port"
Code var port = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"]. IPEndpoint.Port;

Voorbeeld

Hier volgt een voorbeeld van een werkrol waarmee een opstarttaak wordt gemaakt met een omgevingsvariabele met de naam TestIsEmulated ingesteld op de xpath-waarde @emulated.

<WorkerRole name="Role1">
    <ConfigurationSettings>
      <Setting name="Setting1" />
    </ConfigurationSettings>
    <LocalResources>
      <LocalStorage name="LocalStore1" sizeInMB="1024"/>
    </LocalResources>
    <Endpoints>
      <InternalEndpoint name="Endpoint1" protocol="tcp" />
    </Endpoints>
    <Startup>
      <Task commandLine="example.cmd inputParm">
        <Environment>
          <Variable name="TestConstant" value="Constant"/>
          <Variable name="TestEmptyValue" value=""/>
          <Variable name="TestIsEmulated">
            <RoleInstanceValue xpath="/RoleEnvironment/Deployment/@emulated"/>
          </Variable>
          ...
        </Environment>
      </Task>
    </Startup>
    <Runtime>
      <Environment>
        <Variable name="TestConstant" value="Constant"/>
        <Variable name="TestEmptyValue" value=""/>
        <Variable name="TestIsEmulated">
          <RoleInstanceValue xpath="/RoleEnvironment/Deployment/@emulated"/>
        </Variable>
        ...
      </Environment>
    </Runtime>
    ...
</WorkerRole>

Volgende stappen

Meer informatie over het bestand ServiceConfiguration.cscfg .

Maak een ServicePackage.cspkg-pakket .

Extern bureaublad inschakelen voor een rol.