Verfügbarmachen von Rollenkonfigurationseinstellungen als Umgebungsvariable mit XPath

Wichtig

Cloud Services (klassisch) wurde für neue Kunden nun als veraltet gekennzeichnet und wird am 31. August 2024 für alle Kunden ausgemustert. In neuen Bereitstellungen sollte das neue auf Azure Resource Manager basierende Bereitstellungsmodell für Azure Cloud Services (erweiterter Support) verwendet werden.

In der Dienstdefinitionsdatei der Clouddienst-Worker- oder Webrolle können Sie Laufzeitkonfigurationswerte als Umgebungsvariablen verfügbar machen. Die folgenden XPath-Werte (die API-Werten entsprechen) werden unterstützt.

Diese XPath-Werte sind auch über die Microsoft.WindowsAzure.ServiceRuntime -Bibliothek verfügbar.

Im Emulator ausgeführte App

Gibt an, dass die Anwendung im Emulator ausgeführt wird

type Beispiel
XPath xpath="/RoleEnvironment/Deployment/@emulated"
Code var x = RoleEnvironment.IsEmulated;

Bereitstellungs-ID

Ruft die Bereitstellungs-ID für die Instanz ab

type Beispiel
XPath xpath="/RoleEnvironment/Deployment/@id"
Code var deploymentId = RoleEnvironment.DeploymentId;

Rollen-ID

Ruft die aktuelle Rollen-ID für die Instanz ab

type Beispiel
XPath xpath="/RoleEnvironment/CurrentInstance/@id"
Code var id = RoleEnvironment.CurrentRoleInstance.Id;

Domäne aktualisieren

Ruft die Updatedomäne der Instanz ab

type Beispiel
XPath xpath="/RoleEnvironment/CurrentInstance/@updateDomain"
Code var ud = RoleEnvironment.CurrentRoleInstance.UpdateDomain;

Fehlerdomäne

Ruft die Fehlerdomäne der Instanz ab

type Beispiel
XPath xpath="/RoleEnvironment/CurrentInstance/@faultDomain"
Code var fd = RoleEnvironment.CurrentRoleInstance.FaultDomain;

Rollenname

Ruft den Rollennamen der Instanzen ab

type Beispiel
XPath xpath="/RoleEnvironment/CurrentInstance/@roleName"
Code var rname = RoleEnvironment.CurrentRoleInstance.Role.Name;

Konfigurationseinstellung

Ruft den Wert der angegebenen Konfigurationseinstellung ab

type Beispiel
XPath xpath="/RoleEnvironment/CurrentInstance/ConfigurationSettings/ConfigurationSetting[@name='Setting1']/@value"
Code var setting = RoleEnvironment.GetConfigurationSettingValue("Setting1");

Lokaler Speicherpfad

Ruft den lokalen Speicherpfad für die Instanz ab

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

Größe des lokalen Speichers

Ruft die Größe des lokalen Speichers für die Instanz ab

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

Endpunktprotokoll

Ruft das Endpunktprotokoll für die Instanz ab

type Beispiel
XPath xpath="/RoleEnvironment/CurrentInstance/Endpoints/Endpoint[@name='Endpoint1']/@protocol"
Code var prot = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"].Protocol;

Endpunkt-IP

Ruft die IP-Adresse des angegebenen Endpunkts ab

type Beispiel
XPath xpath="/RoleEnvironment/CurrentInstance/Endpoints/Endpoint[@name='Endpoint1']/@address"
Code var address = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"].IPEndpoint.Address

Endpunktport

Ruft den Endpunktport für die Instanz ab

type Beispiel
XPath xpath="/RoleEnvironment/CurrentInstance/Endpoints/Endpoint[@name='Endpoint1']/@port"
Code var port = RoleEnvironment.CurrentRoleInstance.InstanceEndpoints["Endpoint1"].IPEndpoint.Port;

Beispiel

Hier ist ein Beispiel für eine Workerrolle, die eine Startaufgabe mit der Umgebungsvariablen TestIsEmulated erstellt, festgelegt auf den XPath-Wert @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>

Nächste Schritte

Erfahren Sie mehr über die Datei ServiceConfiguration.cscfg .

Erstellen Sie ein ServicePackage.cspkg -Paket.

Aktivieren Sie Remotedesktop für eine Rolle.