Parametrisieren von Konfigurationsdateien in Service Fabric

In diesem Artikel erfahren Sie, wie Sie eine Konfigurationsdatei in Service Fabric parametrisieren. Wenn Sie noch nicht mit den grundlegenden Konzepten der Verwaltung von Anwendungen für mehrere Umgebungen vertraut sind, lesen Sie Verwalten von Anwendungen für mehrere Umgebungen.

Verfahren für das Parametrisieren von Konfigurationsdateien

In diesem Beispiel überschreiben Sie einen Konfigurationswert, indem Sie Parameter in der Anwendungsbereitstellung verwenden.

  1. Öffnen Sie die Datei <MyService>\PackageRoot\Config\Settings.xml in Ihrem Dienstprojekt.

  2. Legen Sie den Namen und den Wert eines Konfigurationsparameters fest, z.B. Cachegröße 25, indem Sie den folgenden XML-Code hinzufügen:

     <Section Name="MyConfigSection">
       <Parameter Name="CacheSize" Value="25" />
     </Section>
    
  3. Speichern und schließen Sie die Datei.

  4. Öffnen Sie die Datei <MyApplication>\ApplicationPackageRoot\ApplicationManifest.xml.

  5. Deklarieren Sie in der Datei „ApplicationManifest.xml“ einen Parameter und Standardwert im Parameters-Element. Es wird empfohlen, dass der Name des Parameters den Namen des Diensts enthält (z.B. „MyService“).

     <Parameters>
       <Parameter Name="MyService_CacheSize" DefaultValue="80" />
     </Parameters>
    
  6. Fügen Sie im Abschnitt ServiceManifestImport der Datei „ApplicationManifest.xml“ ein ConfigOverrides- und ein ConfigOverride-Element hinzu, in dem auf das Konfigurationspaket, den Abschnitt und den Parameter verwiesen wird.

     <ConfigOverrides>
       <ConfigOverride Name="Config">
           <Settings>
             <Section Name="MyConfigSection">
                 <Parameter Name="CacheSize" Value="[MyService_CacheSize]" />
             </Section>
           </Settings>
       </ConfigOverride>
     </ConfigOverrides>
    

Hinweis

Wenn Sie ein ConfigOverride-Element hinzugefügt haben, wählt Service Fabric immer die Anwendungsparameter oder den Standardwert aus, der im Anwendungsmanifest angegeben ist.

Zugriff auf parametrisierte Konfigurationen im Code

Sie können programmgesteuert auf die Konfiguration in Ihrer settings.xml-Datei zugreifen. Nehmen Sie beispielsweise die folgende XML-Konfigurationsdatei an:

<Settings
	xmlns:xsd="http://www.w3.org/2001/XMLSchema"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://schemas.microsoft.com/2011/01/fabric">
	<!-- Add your custom configuration sections and parameters here -->
	<Section Name="MyConfigSection">
		<Parameter Name="MyParameter" Value="Value1" />
	</Section>
</Settings>     

Verwenden Sie den folgenden Code, um auf die Parameter zuzugreifen:

CodePackageActivationContext context = FabricRuntime.GetActivationContext();
var configSettings = context.GetConfigurationPackageObject("Config").Settings;
var data = configSettings.Sections["MyConfigSection"];
foreach (var parameter in data.Parameters)
{
  ServiceEventSource.Current.ServiceMessage(this.Context, "Working-{0} - {1}", parameter.Name, parameter.Value);
}

Hier wird Parameter.Name „MyParameter“ sein und Parameter.Value wird „Value1“ sein.

Nächste Schritte

Informationen zu anderen App-Verwaltungsfunktionen in Visual Studio finden Sie unter Verwalten Ihrer Service Fabric-Anwendungen in Visual Studio.