Schema Impostazioni dell'applicazione

Le impostazioni dell'applicazione consentono a un'applicazione Windows Form o ASP.NET di archiviare e recuperare le impostazioni con ambito applicazione e con ambito utente. In questo contesto, un'impostazione è qualsiasi informazione specifica per l'applicazione o specifica dell'utente corrente, ovvero qualsiasi elemento da un database stringa di connessione alle dimensioni predefinite della finestra predefinita preferite dell'utente.

Per impostazione predefinita, le impostazioni dell'applicazione in un'applicazione Windows Form usano la LocalFileSettingsProvider classe , che usa il sistema di configurazione .NET per archiviare le impostazioni in un file di configurazione XML. Per altre informazioni sui file usati dalle impostazioni dell'applicazione, vedere Application Impostazioni Architecture.For more information about the files used by application settings, see Application Impostazioni Architecture.

Importante

La maggior parte delle sezioni di configurazione definite da .NET Framework non è più funzionale nelle versioni .NET 6+ e .NET Core. ConfigurationManager viene fornito solo per la compatibilità. Anziché app.config, .NET moderno usa il file appsettings.json per le impostazioni dell'app. Vedere Modernizzare dopo l'aggiornamento a .NET da .NET Framework.

Provare a rimuovere l'utilizzo in app.config e a chiamare l'API corrispondente, se disponibile, per rendere la stessa impostazione. Per altre informazioni, vedere Configurazione in .NET.

Le impostazioni dell'applicazione definiscono gli elementi seguenti come parte dei file di configurazione usati.

Elemento Descrizione
<application Impostazioni> Contiene tutti i <tag di impostazione> specifici dell'applicazione.
<utente Impostazioni> Contiene tutti i <tag di impostazione> specifici per l'utente corrente.
<Impostazione> Definisce un'impostazione. Figlio di un'applicazione <Impostazioni> o <di un utente Impostazioni.>
<value> Definisce il valore di un'impostazione. Elemento figlio dell'impostazione><.

<elemento application Impostazioni>

Questo elemento contiene tutti i <tag di impostazione> specifici di un'istanza dell'applicazione in un computer client. Non definisce alcun attributo.

<elemento user Impostazioni>

Questo elemento contiene tutti i <tag di impostazione> specifici dell'utente che sta attualmente usando l'applicazione. Non definisce alcun attributo.

<elemento setting>

Questo elemento definisce un'impostazione. Ha gli attributi seguenti.

Attributo Descrizione
name Obbligatorio. ID univoco dell'impostazione. Impostazioni creati tramite Visual Studio vengono salvati con il nome ProjectName.Properties.Settings.
Serializeas Obbligatorio. Formato da utilizzare per serializzare il valore in testo. Valori validi:

- string. Il valore viene serializzato come stringa usando un oggetto TypeConverter.
- xml. Il valore viene serializzato utilizzando la serializzazione XML.
- binary. Il valore viene serializzato come binario codificato in testo usando la serializzazione binaria.
- custom. Il provider di impostazioni ha una conoscenza intrinseca di questa impostazione e serializza e la serializza.

Aggiungere i nomi per le impostazioni create nell'applicazione <Impostazioni> come voci nell'elemento <configSections> nella parte superiore del file. Ad esempio:

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

<elemento value>

Questo elemento contiene il valore di un'impostazione.

Esempio

L'esempio seguente mostra un file di impostazioni dell'applicazione che definisce due impostazioni con ambito applicazione e due impostazioni con ambito utente:

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

Vedi anche