Aracılığıyla paylaş


Service Fabric'te yapılandırma dosyalarını parametreleştirme

Bu makalede, Service Fabric'te bir yapılandırma dosyasını parametreleştirme gösterilmektedir. Birden çok ortam için uygulamaları yönetmeyle ilgili temel kavramlar hakkında bilgi sahibi değilseniz Birden çok ortam için uygulamaları yönetme makalesini okuyun.

Yapılandırma dosyalarını parametreleştirme yordamı

Bu örnekte, uygulama dağıtımınızdaki parametreleri kullanarak bir yapılandırma değerini geçersiz kılarsınız.

  1. <Hizmet projenizde MyService>\PackageRoot\Config\Settings.xml dosyasını açın.

  2. Aşağıdaki XML'yi ekleyerek 25'e eşit önbellek boyutu gibi bir yapılandırma parametresi adı ve değeri ayarlayın:

     <Section Name="MyConfigSection">
       <Parameter Name="CacheSize" Value="25" />
     </Section>
    
  3. Dosyayı kaydedip kapatın

  4. <MyApplication>\ApplicationPackageRoot\ApplicationManifest.xml dosyasını açın.

  5. ApplicationManifest.xml dosyasında, öğesinde Parameters bir parametre ve varsayılan değer bildirin. Parametre adının hizmetin adını (örneğin, "MyService") içermesi önerilir.

     <Parameters>
       <Parameter Name="MyService_CacheSize" DefaultValue="80" />
     </Parameters>
    
  6. ServiceManifestImport ApplicationManifest.xml dosyasının bölümünde yapılandırma paketine, bölüme ve parametresine başvuran bir ConfigOverrides ConfigOverride ve öğesi ekleyin.

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

Not

ConfigOverride eklediğinizde Service Fabric her zaman uygulama parametrelerini veya uygulama bildiriminde belirtilen varsayılan değeri seçer.

Kodda parametreli yapılandırmalara erişme

settings.xml dosyanızdaki yapılandırmaya program aracılığıyla erişebilirsiniz. Örneğin, aşağıdaki yapılandırma XML dosyasını alın:

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

Parametrelere erişmek için aşağıdaki kodu kullanın:

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

Burada Parameter.Name MyParameter ve Parameter.Value Değer1 olacaktır

Sonraki adımlar

Visual Studio'da kullanılabilen diğer uygulama yönetimi özellikleri hakkında bilgi için bkz . Visual Studio'da Service Fabric uygulamalarınızı yönetme.