Condividi tramite


Opzioni di configurazione del runtime per la globalizzazione

Modalità invariante

  • Determina se un'app .NET Core viene eseguita in modalità invariante di globalizzazione senza accesso a dati e comportamenti specifici delle impostazioni cultura.
  • Se si omette questa impostazione, l'app viene eseguita con accesso ai dati culturali. Equivale a impostare il valore su false.
  • Per altre informazioni, vedere Globalizzazione di .NET Core in modalità invariante.
Nome della impostazione Valori
runtimeconfig.json System.Globalization.Invariant false - accesso ai dati culturali
true - Esecuzione in modalità invariante
Proprietà MSBuild InvariantGlobalization false - accesso ai dati culturali
true - Esecuzione in modalità invariante
Variabile di ambiente DOTNET_SYSTEM_GLOBALIZATION_INVARIANT 0 - accesso ai dati culturali
1 - Esecuzione in modalità invariante

Esempi

File runtimeconfig.json:

{
   "runtimeOptions": {
      "configProperties": {
         "System.Globalization.Invariant": true
      }
   }
}

File runtimeconfig.template.json:

{
   "configProperties": {
      "System.Globalization.Invariant": true
   }
}

File di progetto:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <InvariantGlobalization>true</InvariantGlobalization>
  </PropertyGroup>

</Project>

Intervalli di anni dell'era

Nome della impostazione Valori
runtimeconfig.json Switch.System.Globalization.EnforceJapaneseEraYearRanges false - controlli di intervallo rilassato
true - Gli overflow causano un'eccezione
Variabile di ambiente N/A N/A

Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.

Analisi data giapponese

  • Determina se una stringa che contiene "1" o "Gannen" come l'anno analizza correttamente o se è supportato solo "1".
  • Se si omette questa impostazione, le stringhe che contengono "1" o "Gannen" come analisi dell'anno correttamente. Equivale a impostare il valore su false.
  • Per altre informazioni, vedere Rappresentare le date nei calendari con più ere.
Nome della impostazione Valori
runtimeconfig.json Switch.System.Globalization.EnforceLegacyJapaneseDateParsing false - È supportato "Gannen" o "1"
true - È supportato solo "1"
Variabile di ambiente N/A N/A

Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.

Formato anno giapponese

  • Determina se il primo anno di un'era del calendario giapponese è formattato come "Gannen" o come numero.
  • Se si omette questa impostazione, il primo anno viene formattato come "Gannen". Equivale a impostare il valore su false.
  • Per altre informazioni, vedere Rappresentare le date nei calendari con più ere.
Nome della impostazione Valori
runtimeconfig.json Switch.System.Globalization.FormatJapaneseFirstYearAsANumber false - formato come "Gannen"
true - formato come numero
Variabile di ambiente N/A N/A

Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.

NLS

  • Determina se .NET usa NLS (National Language Support) o i componenti internazionali per le API di globalizzazione Unicode (ICU) per le app di Windows. .NET 5 e versioni successive usano le API di globalizzazione dell'ICU per impostazione predefinita in Windows 10 maggio 2019 Update e versioni successive.
  • Se si omette questa impostazione, .NET usa le API di globalizzazione dell'ICU per impostazione predefinita. Equivale a impostare il valore su false.
  • Per altre informazioni, vedere Le API di globalizzazione usano librerie di ICU in Windows.
Nome della impostazione Valori Presentazione
runtimeconfig.json System.Globalization.UseNls false - Usare le API di globalizzazione dell'ICU
true - Usare le API di globalizzazione NLS
.NET 5
Variabile di ambiente DOTNET_SYSTEM_GLOBALIZATION_USENLS false - Usare le API di globalizzazione dell'ICU
true - Usare le API di globalizzazione NLS
.NET 5

Questa impostazione di configurazione non ha una proprietà MSBuild specifica. È tuttavia possibile aggiungere un elemento MSBuild RuntimeHostConfigurationOption in alternativa. Usare il nome dell'impostazione runtimeconfig.json come valore dell'attributo Include. Per un esempio, vedere Proprietà di MSBuild.

Impostazioni cultura predefinite

Nome della impostazione Valori Presentazione
runtimeconfig.json System.Globalization.PredefinedCulturesOnly true - In modalità invariante di globalizzazione, non consentire la creazione di impostazioni cultura ad eccezione delle impostazioni cultura invarianti.
false - Consente la creazione di impostazioni cultura.
.NET 6
Proprietà MSBuild PredefinedCulturesOnly true - In modalità invariante di globalizzazione, non consentire la creazione di impostazioni cultura ad eccezione delle impostazioni cultura invarianti.
false - Consente la creazione di impostazioni cultura.
.NET 6
Variabile di ambiente DOTNET_SYSTEM_GLOBALIZATION_PREDEFINED_CULTURES_ONLY true - In modalità invariante di globalizzazione, non consentire la creazione di impostazioni cultura ad eccezione delle impostazioni cultura invarianti.
false - Consente la creazione di impostazioni cultura.
.NET 6