Delen via


Toepassingsschema Instellingen

Met toepassingsinstellingen kan een Windows Forms- of ASP.NET-toepassing instellingen voor toepassingsbereik en gebruikersbereik opslaan en ophalen. In deze context is een instelling alle informatie die specifiek kan zijn voor de toepassing of specifiek is voor de huidige gebruiker, alles van een database verbindingsreeks de gewenste standaardvenstergrootte van de gebruiker.

Toepassingsinstellingen in een Windows Forms-toepassing maken standaard gebruik van de LocalFileSettingsProvider klasse, die gebruikmaakt van het .NET-configuratiesysteem voor het opslaan van instellingen in een XML-configuratiebestand. Zie Application Instellingen Architecture voor meer informatie over de bestanden die worden gebruikt door toepassingsinstellingen.

Belangrijk

De meeste configuratiesecties die door .NET Framework zijn gedefinieerd, werken niet meer in .NET 6+ en .NET Core-versies. ConfigurationManager is alleen beschikbaar voor compatibiliteit. In plaats van app.config gebruikt modern .NET het bestand appsettings.json voor app-instellingen. Zie Moderniseren na een upgrade naar .NET vanuit .NET Framework.

Overweeg het gebruik in app.config te verwijderen en de bijbehorende API aan te roepen, indien beschikbaar, om dezelfde instelling te maken. Zie Configuratie in .NET voor meer informatie.

Toepassingsinstellingen definiƫren de volgende elementen als onderdeel van de configuratiebestanden die worden gebruikt.

Element Beschrijving
<toepassing Instellingen> Bevat alle <instellingstags> die specifiek zijn voor de toepassing.
<gebruiker Instellingen> Bevat alle <instellingstags> die specifiek zijn voor de huidige gebruiker.
<Instelling> Hiermee definieert u een instelling. Onderliggend element van toepassing <Instellingen> of <gebruiker Instellingen.>
<value> Definieert de waarde van een instelling. Onderliggend element van <instelling>.

<toepassingselement Instellingen>

Dit element bevat alle <instellingstags> die specifiek zijn voor een exemplaar van de toepassing op een clientcomputer. Er worden geen kenmerken gedefinieerd.

<user Instellingen> element

Dit element bevat alle <instellingstags> die specifiek zijn voor de gebruiker die momenteel de toepassing gebruikt. Er worden geen kenmerken gedefinieerd.

<instellingselement>

Dit element definieert een instelling. Deze heeft de volgende kenmerken.

Kenmerk Beschrijving
name Vereist. De unieke id van de instelling. Instellingen gemaakt via Visual Studio worden opgeslagen met de naamProjectName.Properties.Settings.
serializeAs Vereist. De indeling die moet worden gebruikt voor het serialiseren van de waarde in tekst. Geldige waarden zijn:

- string. De waarde wordt geserialiseerd als een tekenreeks met behulp van een TypeConverter.
- xml. De waarde wordt geserialiseerd met XML-serialisatie.
- binary. De waarde wordt geserialiseerd als met tekst gecodeerd binair met behulp van binaire serialisatie.
- custom. De instellingenprovider heeft inherente kennis van deze instelling en serialiseert en de serialiseert deze.

Voeg de namen toe voor instellingen die u in <de toepassing maakt Instellingen> als vermeldingen onder het <configSections-element> boven aan het bestand. Bijvoorbeeld:

<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>

<waardeelement>

Dit element bevat de waarde van een instelling.

Voorbeeld

In het volgende voorbeeld ziet u een toepassingsinstellingenbestand dat twee instellingen voor toepassingsbereik en twee instellingen voor gebruikersbereik definieert:

<?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>

Zie ook