Schéma nastavení aplikace

Nastavení aplikace umožňuje aplikaci Windows Forms nebo ASP.NET ukládat a načítat nastavení s vymezeným oborem aplikace a uživatelem. V tomto kontextu je nastavení jakékoli informace, které můžou být specifické pro aplikaci nebo specifické pro aktuálního uživatele – cokoli od připojovacího řetězce databáze po upřednostňovanou výchozí velikost okna uživatele.

Nastavení aplikace v aplikaci Windows Forms ve výchozím nastavení používá LocalFileSettingsProvider třídu, která používá konfigurační systém .NET k ukládání nastavení do konfiguračního souboru XML. Další informace o souborech používaných nastavením aplikace naleznete v tématu Architektura nastavení aplikace.

Důležité

Většina oddílů konfigurace definovaných rozhraním .NET Framework už ve verzích .NET 6+ a .NET Core nefunguje. ConfigurationManager je poskytována pouze z důvodu kompatibility. Místo app.configpoužívá moderní .NET soubor appsettings.json pro nastavení aplikace. Přečtěte si téma Modernizace po upgradu na .NET z rozhraní .NET Framework.

Zvažte odebrání využití v app.config a volání odpovídajícího rozhraní API( pokud je k dispozici) a proveďte stejné nastavení. Další informace naleznete v tématu Konfigurace v .NET.

Nastavení aplikace definuje následující prvky jako součást konfiguračních souborů, které používá.

prvek Description
<applicationSettings> Obsahuje všechny <setting> značky specifické pro aplikaci.
<userSettings> Obsahuje všechny <setting> značky specifické pro aktuálního uživatele.
<setting> Definuje nastavení. Dítě buď <applicationSettings> nebo <userSettings>.
<value> Definuje hodnotu nastavení. Dítě .<setting>

<applicationSettings> prvek

Tento prvek obsahuje všechny <setting> značky specifické pro instanci aplikace v klientském počítači. Definuje žádné atributy.

<userSettings> prvek

Tento prvek obsahuje všechny <setting> značky specifické pro uživatele, který aktuálně používá aplikaci. Definuje žádné atributy.

<setting> prvek

Tento prvek definuje nastavení. Má následující atributy.

Vlastnost Description
name Povinné. Jedinečné ID nastavení. Nastavení vytvořená prostřednictvím sady Visual Studio se uloží s názvem ProjectName.Properties.Settings.
serializeAs Povinné. Formát, který se má použít pro serializaci hodnoty na text. Platné hodnoty jsou:

- string. Hodnota je serializována jako řetězec pomocí TypeConverter.
- xml. Hodnota je serializována pomocí serializace XML.
- binary. Hodnota je serializována jako binární soubor kódovaný jako binární serializace.
- custom. Poskytovatel nastavení má základní znalosti o tomto nastavení a serializuje a de-serializuje ho.

Přidejte názvy nastavení, která vytvoříte, <applicationSettings> jako položky pod <configSections> element v horní části souboru. Například:

<configuration>
    <configSections>
        <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
            <section name="WindowsFormsApp1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
            <section name="WindowsFormsApp1.Properties.MyCustomSettings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
        </sectionGroup>
    </configSections>
    ...
</configuration>

<value> prvek

Tento prvek obsahuje hodnotu nastavení.

Example

Následující příklad ukazuje soubor nastavení aplikace, který definuje dvě nastavení s oborem aplikace a dvě nastavení s oborem uživatele:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
      <section name="WindowsApplication1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
    </sectionGroup>
    <sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
      <section name="WindowsApplication1.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" />
    </sectionGroup>
  </configSections>
  <applicationSettings>
    <WindowsApplication1.Properties.Settings>
      <setting name="Cursor" serializeAs="String">
        <value>Default</value>
      </setting>
      <setting name="DoubleBuffering" serializeAs="String">
        <value>False</value>
      </setting>
    </WindowsApplication1.Properties.Settings>
  </applicationSettings>
  <userSettings>
    <WindowsApplication1.Properties.Settings>
      <setting name="FormTitle" serializeAs="String">
        <value>Form1</value>
      </setting>
      <setting name="FormSize" serializeAs="String">
        <value>595, 536</value>
      </setting>
    </WindowsApplication1.Properties.Settings>
  </userSettings>
</configuration>

Viz také