Opciones de configuración de ejecución para globalización

Modo invariable

  • Determina si una aplicación de .NET Core se ejecuta en modo invariable de globalización sin tener acceso a los datos y el comportamiento concretos de la referencia cultural.
  • Si se omite esta configuración, la aplicación se ejecuta con acceso a los datos culturales. Esto es equivalente a establecer el valor en false.
  • Para obtener más información, vea Modo invariable de globalización de .NET Core.
Nombre de valor Valores
runtimeconfig.json System.Globalization.Invariant false: acceder a los datos culturales.
true: ejecutar en modo invariable.
Propiedad de MSBuild InvariantGlobalization false: acceder a los datos culturales.
true: ejecutar en modo invariable.
Variable del entorno DOTNET_SYSTEM_GLOBALIZATION_INVARIANT 0: acceder a los datos culturales.
1: ejecutar en modo invariable.

Ejemplos

Archivo runtimeconfig.json:

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

archivo runtimeconfig.template.json:

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

Archivo del proyecto:

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

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

</Project>

Rangos de años de la era

Nombre de valor Valores
runtimeconfig.json Switch.System.Globalization.EnforceJapaneseEraYearRanges false: comprobaciones de intervalos relajadas.
true: los desbordamientos causan una excepción.
Variable del entorno N/D N/D

Esta configuración no tiene una propiedad específica de MSBuild. Sin embargo, puede agregar un elemento RuntimeHostConfigurationOption de MSBuild en su lugar. Use el nombre de la configuración runtimeconfig.json como valor del atributo Include. Para obtener un ejemplo, consulte propiedades de MSBuild.

Análisis de fechas japonesas

  • Determina si una cadena cuyo valor del año contiene "1" o "Gannen" se analiza correctamente o si solo se admite "1".
  • Si se omite este valor, las cadenas que contienen "1" o "Gannen" como año se analizan correctamente. Esto es equivalente a establecer el valor en false.
  • Para obtener más información, vea Representación de fechas en calendarios con varias eras.
Nombre de valor Valores
runtimeconfig.json Switch.System.Globalization.EnforceLegacyJapaneseDateParsing false: se admite "Gannen" o "1".
true: solo se admite "1".
Variable del entorno N/D N/D

Esta configuración no tiene una propiedad específica de MSBuild. Sin embargo, puede agregar un elemento RuntimeHostConfigurationOption de MSBuild en su lugar. Use el nombre de la configuración runtimeconfig.json como valor del atributo Include. Para obtener un ejemplo, consulte propiedades de MSBuild.

Formato de año japonés

  • Determina si el primer año de una era de calendario japonés tiene formato "Gannen" o un número.
  • Si se omite esta configuración, el primer año tiene formato "Gannen". Esto es equivalente a establecer el valor en false.
  • Para obtener más información, vea Representación de fechas en calendarios con varias eras.
Nombre de valor Valores
runtimeconfig.json Switch.System.Globalization.FormatJapaneseFirstYearAsANumber false: dar formato como "Gannen".
true: dar formato como número.
Variable del entorno N/D N/D

Esta configuración no tiene una propiedad específica de MSBuild. Sin embargo, puede agregar un elemento RuntimeHostConfigurationOption de MSBuild en su lugar. Use el nombre de la configuración runtimeconfig.json como valor del atributo Include. Para obtener un ejemplo, consulte propiedades de MSBuild.

NLS

  • Determina si .NET usa las API de globalización de compatibilidad con el idioma nacional (NLS) o componentes internacionales para Unicode (ICU) para aplicaciones de Windows. .NET 5 y las versiones posteriores usan las API de globalización de ICU de forma predeterminada en la actualización de mayo de 2019 de Windows 10 y versiones posteriores.
  • Si se omite esta configuración, .NET usa las API de globalización de ICU forma predeterminada. Esto es equivalente a establecer el valor en false.
  • Para obtener más información, consulte Las API de globalización usan bibliotecas ICU en Windows.
Nombre de valor Valores Inclusión
runtimeconfig.json System.Globalization.UseNls false -Uso de API de globalización de ICU
true -Uso de API de globalización de NLS
.NET 5
Variable del entorno DOTNET_SYSTEM_GLOBALIZATION_USENLS false -Uso de API de globalización de ICU
true -Uso de API de globalización de NLS
.NET 5

Esta configuración no tiene una propiedad específica de MSBuild. Sin embargo, puede agregar un elemento RuntimeHostConfigurationOption de MSBuild en su lugar. Use el nombre de la configuración runtimeconfig.json como valor del atributo Include. Para obtener un ejemplo, consulte propiedades de MSBuild.

Referencias culturales predefinidas

Nombre de valor Valores Inclusión
runtimeconfig.json System.Globalization.PredefinedCulturesOnly true: en el modo invariable de globalización, no permite la creación de ninguna referencia cultural, excepto la invariable.
false: permite la creación de cualquier referencia cultural.
.NET 6
Propiedad de MSBuild PredefinedCulturesOnly true: en el modo invariable de globalización, no permite la creación de ninguna referencia cultural, excepto la invariable.
false: permite la creación de cualquier referencia cultural.
.NET 6
Variable del entorno DOTNET_SYSTEM_GLOBALIZATION_PREDEFINED_CULTURES_ONLY true: en el modo invariable de globalización, no permite la creación de ninguna referencia cultural, excepto la invariable.
false: permite la creación de cualquier referencia cultural.
.NET 6