Schéma Nastavení aplikací
Nastavení aplikace umožňuje model Windows Forms nebo ASP.NET aplikaci 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 databáze připojovací řetězec k preferované výchozí velikosti okna uživatele.
Ve výchozím nastavení aplikace model Windows Forms aplikace 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.config použí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á.
Element (Prvek) | Popis |
---|---|
<aplikace Nastavení> | Obsahuje všechny <značky nastavení> specifické pro aplikaci. |
<uživatel Nastavení> | Obsahuje všechny <značky nastavení> specifické pro aktuálního uživatele. |
<Nastavení> | Definuje nastavení. Podřízený prvek aplikace Nastavení> nebo <uživatele Nastavení>< |
<value> | Definuje hodnotu nastavení. Podřízený prvek <nastavení>. |
<application Nastavení> – element
Tento prvek obsahuje všechny <značky nastavení> specifické pro instanci aplikace v klientském počítači. Definuje žádné atributy.
<user Nastavení> – element
Tento prvek obsahuje všechny <značky nastavení> , které jsou specifické pro uživatele, který aktuálně používá aplikaci. Definuje žádné atributy.
<element setting>
Tento prvek definuje nastavení. Má následující atributy.
Atribut | Popis |
---|---|
Jméno | Požadováno. Jedinečné ID nastavení. Nastavení vytvořené prostřednictvím sady Visual Studio se uloží s názvem ProjectName.Properties.Settings . |
serializace A | 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 v aplikaci Nastavení> jako položky pod< element configSections> v horní části souboru.< Pří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> – element
Tento prvek obsahuje hodnotu nastavení.
Příklad
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>