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.
<Hizmet projenizde MyService>\PackageRoot\Config\Settings.xml dosyasını açın.
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>
Dosyayı kaydedip kapatın
<MyApplication>\ApplicationPackageRoot\ApplicationManifest.xml dosyasını açın.
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>
ServiceManifestImport
ApplicationManifest.xml dosyasının bölümünde yapılandırma paketine, bölüme ve parametresine başvuran birConfigOverrides
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.