Come aggiungere parametri ai file di configurazione in Service Fabric
Questo articolo illustra come aggiungere parametri a un file di configurazione in Service Fabric. Se non si ha già familiarità con i concetti di base di gestione delle applicazioni per più ambienti, leggere Gestire le applicazioni per più ambienti.
Procedura per aggiungere parametri ai file di configurazione
In questo esempio si esegue l'override di un valore di configurazione definendo parametri nella distribuzione dell'applicazione.
Aprire il file <MyService>\PackageRoot\Config\Settings.xml nel progetto del servizio.
Impostare un nome e un valore di un parametro di configurazione, ad esempio una dimensione della cache pari a 25, aggiungendo il codice XML seguente:
<Section Name="MyConfigSection"> <Parameter Name="CacheSize" Value="25" /> </Section>
Salva e chiudi il file.
Aprire il file <MyApplication>\ApplicationPackageRoot\ApplicationManifest.xml.
Nel file ApplicationManifest.xml dichiarare un parametro e il valore predefinito nell'elemento
Parameters
. È consigliabile assegnare al parametro un nome che includa quello del servizio, ad esempio "MyService".<Parameters> <Parameter Name="MyService_CacheSize" DefaultValue="80" /> </Parameters>
Nella sezione
ServiceManifestImport
del file ApplicationManifest.xml aggiungere un elementoConfigOverrides
eConfigOverride
che fa riferimento al pacchetto di configurazione, alla sezione e al parametro.<ConfigOverrides> <ConfigOverride Name="Config"> <Settings> <Section Name="MyConfigSection"> <Parameter Name="CacheSize" Value="[MyService_CacheSize]" /> </Section> </Settings> </ConfigOverride> </ConfigOverrides>
Nota
Quando si aggiunge un elemento ConfigOverride, Service Fabric sceglie sempre i parametri dell'applicazione o il valore predefinito specificato nel manifesto dell'applicazione.
Accedere alle configurazioni parametrizzate nel codice
È possibile accedere alla configurazione nel file settings.xml a livello di programmazione. Ad esempio, il file XML di configurazione seguente:
<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>
Usare il codice seguente per accedere ai parametri:
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);
}
Qui Parameter.Name
sarà MyParameter e Parameter.Value
sarà Value1
Passaggi successivi
Per informazioni su altre funzionalità di gestione delle app disponibili in Visual Studio, vedere Usare Visual Studio per semplificare la scrittura e la gestione delle applicazioni di Service Fabric.