Sdílet prostřednictvím


Parametrizace konfiguračních souborů v Service Fabric

V tomto článku se dozvíte, jak parametrizovat konfigurační soubor v Service Fabric. Pokud ještě nejste obeznámeni se základními koncepty správy aplikací pro více prostředí, přečtěte si téma Správa aplikací pro více prostředí.

Postup parametrizace konfiguračních souborů

V tomto příkladu přepíšete hodnotu konfigurace pomocí parametrů v nasazení aplikace.

  1. V projektu služby otevřete soubor \PackageRoot\Config\Settings.xmlMyService>.<

  2. Přidáním následujícího kódu XML nastavte název a hodnotu konfiguračního parametru, například velikost mezipaměti rovna 25:

     <Section Name="MyConfigSection">
       <Parameter Name="CacheSize" Value="25" />
     </Section>
    
  3. Uložte soubor a zavřete ho.

  4. <Otevřete soubor\ApplicationPackageRoot\ApplicationManifest.xmlMyApplication>.

  5. V souboru ApplicationManifest.xml deklarujte parametr a výchozí hodnotu v elementu Parameters . Doporučuje se, aby název parametru obsahoval název služby (například "MyService").

     <Parameters>
       <Parameter Name="MyService_CacheSize" DefaultValue="80" />
     </Parameters>
    
  6. ServiceManifestImport V části souboru ApplicationManifest.xml přidejte ConfigOverrides element a ConfigOverride s odkazem na konfigurační balíček, oddíl a parametr .

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

Poznámka

V případě, že přidáte ConfigOverride, Service Fabric vždy zvolí parametry aplikace nebo výchozí hodnotu zadanou v manifestu aplikace.

Přístup k parametrizovaným konfiguracím v kódu

Ke konfiguraci v souboru settings.xml můžete přistupovat programově. Vezměme si například následující konfigurační soubor XML:

<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>     

Pro přístup k parametrům použijte následující kód:

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);
}

Tady Parameter.Name bude MyParameter a Parameter.Value bude Hodnota1.

Další kroky

Informace o dalších možnostech správy aplikací, které jsou k dispozici v sadě Visual Studio, najdete v tématu Správa aplikací Service Fabric v sadě Visual Studio.