Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln visar hur du parameteriserar en konfigurationsfil i Service Fabric. Om du inte redan är bekant med huvudbegreppen för att hantera program för flera miljöer läser du Hantera program för flera miljöer.
Procedur för parameterisering av konfigurationsfiler
I det här exemplet åsidosätter du ett konfigurationsvärde med hjälp av parametrar i programdistributionen.
<Öppna filen MyService>\PackageRoot\Config\Settings.xml i tjänstprojektet.
Ange ett namn och värde för konfigurationsparametern, till exempel cachestorlek lika med 25, genom att lägga till följande XML:
<Section Name="MyConfigSection"> <Parameter Name="CacheSize" Value="25" /> </Section>Spara och stäng filen.
<Öppna filen MyApplication>\ApplicationPackageRoot\ApplicationManifest.xml.
I filen ApplicationManifest.xml deklarerar du en parameter och ett standardvärde i elementet
Parameters. Vi rekommenderar att parameternamnet innehåller namnet på tjänsten (till exempel "MyService").<Parameters> <Parameter Name="MyService_CacheSize" DefaultValue="80" /> </Parameters>I avsnittet
ServiceManifestImporti filen ApplicationManifest.xml lägger du till ettConfigOverrideselement ochConfigOverriderefererar till konfigurationspaketet, avsnittet och parametern.<ConfigOverrides> <ConfigOverride Name="Config"> <Settings> <Section Name="MyConfigSection"> <Parameter Name="CacheSize" Value="[MyService_CacheSize]" /> </Section> </Settings> </ConfigOverride> </ConfigOverrides>
Anmärkning
Om du lägger till en ConfigOverride väljer Service Fabric alltid programparametrarna eller standardvärdet som anges i programmanifestet.
Åtkomst till parametriserade konfigurationer i kod
Anmärkning
För många eller för stora tillskrivningar kan påverka API:ets prestanda.
I stället för att använda FabricClient.QueryClient.GetApplicationListAsync hämtar du parametrar med hjälp av metoden som beskrivs i det här avsnittet. För kluster med många program kan du prova att använda standardvärden för att förbättra prestandan. Effekten av programparametrar på prestanda beror på faktorer som VM-storlek, antalet parametrar, antalet program och längden på värdena.
Du kan komma åt konfigurationen i settings.xml-filen programmatiskt. Ta till exempel följande XML-konfigurationsfil:
<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>
Använd följande kod för att komma åt parametrarna:
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);
}
Parameter.Name Här är MyParameter och Parameter.Value är Value1.
Nästa steg
Information om andra apphanteringsfunktioner som är tillgängliga i Visual Studio finns i Hantera dina Service Fabric-program i Visual Studio.