Opsi konfigurasi runtime untuk globalisasi

Mode invarian

  • Menentukan apakah aplikasi .NET Core berjalan dalam mode globalisasi-invariant tanpa akses ke data dan perilaku khusus budaya.
  • Jika Anda menghilangkan pengaturan ini, aplikasi berjalan dengan akses ke data budaya. Ini sama dengan mengatur nilai ke false.
  • Untuk informasi selengkapnya, lihat mode invarian globalisasi .NET Core.
Nama pengaturan Nilai
runtimeconfig.json System.Globalization.Invariant false - akses ke data budaya
true - berjalan dalam mode invarian
Properti MSBuild InvariantGlobalization false - akses ke data budaya
true - berjalan dalam mode invarian
Variabel lingkungan DOTNET_SYSTEM_GLOBALIZATION_INVARIANT 0 - akses ke data budaya
1 - berjalan dalam mode invarian

Contoh

File runtimeconfig.json:

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

file runtimeconfig.template.json :

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

File proyek:

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

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

</Project>

Rentang tahun era

  • Menentukan apakah pemeriksaan rentang untuk kalender yang mendukung beberapa era dilonggarkan atau apakah tanggal yang meluapkan rentang tanggal era memunculkan ArgumentOutOfRangeException.
  • Jika Anda menghilangkan pengaturan ini, pemeriksaan rentang akan dilonggarkan. Ini sama dengan mengatur nilai ke false.
  • Untuk informasi selengkapnya, lihat Kalender, penghapusan, dan rentang tanggal: Pemeriksaan rentang yang dilonggarkan.
Nama pengaturan Nilai
runtimeconfig.json Switch.System.Globalization.EnforceJapaneseEraYearRanges false - pemeriksaan rentang santai
true - luapan menyebabkan pengecualian
Variabel lingkungan T/A T/A

Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya. Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.

Penguraian tanggal Bahasa Jepang

  • Menentukan apakah string yang berisi "1" atau "Gannen" karena tahun berhasil diurai atau apakah hanya "1" yang didukung.
  • Jika Anda menghilangkan pengaturan ini, string yang berisi "1" atau "Gannen" sebagai penguraian tahun berhasil. Ini sama dengan mengatur nilai ke false.
  • Untuk informasi selengkapnya, lihat Mewakili tanggal dalam kalender dengan beberapa era.
Nama pengaturan Nilai
runtimeconfig.json Switch.System.Globalization.EnforceLegacyJapaneseDateParsing false - "Gannen" atau "1" didukung
true - hanya "1" yang didukung
Variabel lingkungan T/A T/A

Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya. Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.

Format tahun Jepang

  • Menentukan apakah tahun pertama era kalender Jepang diformat sebagai "Gannen" atau sebagai angka.
  • Jika Anda menghilangkan pengaturan ini, tahun pertama diformat sebagai "Gannen". Ini sama dengan mengatur nilai ke false.
  • Untuk informasi selengkapnya, lihat Mewakili tanggal dalam kalender dengan beberapa era.
Nama pengaturan Nilai
runtimeconfig.json Switch.System.Globalization.FormatJapaneseFirstYearAsANumber false - format sebagai "Gannen"
true - format sebagai angka
Variabel lingkungan T/A T/A

Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya. Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.

NLS

  • Menentukan apakah .NET menggunakan API globalisasi Dukungan Bahasa Nasional (NLS) atau Komponen Internasional untuk Unicode (ICU) untuk aplikasi Windows. .NET 5 dan versi yang lebih baru menggunakan API globalisasi ICU secara default pada Pembaruan Windows 10 Mei 2019 dan versi yang lebih baru.
  • Jika Anda menghilangkan pengaturan ini, .NET menggunakan API globalisasi ICU secara default. Ini sama dengan mengatur nilai ke false.
  • Untuk informasi selengkapnya, dapat dilihat API Globalisasi menggunakan pustaka ICU di Windows.
Nama pengaturan Nilai Pengenalan
runtimeconfig.json System.Globalization.UseNls false - Menggunakan API globalisasi ICU
true - Gunakan API globalisasi NLS
.NET 5
Variabel lingkungan DOTNET_SYSTEM_GLOBALIZATION_USENLS false - Menggunakan API globalisasi ICU
true - Gunakan API globalisasi NLS
.NET 5

Pengaturan konfigurasi ini tidak memiliki properti MSBuild tertentu. Namun, Anda dapat menambahkan RuntimeHostConfigurationOption item MSBuild sebagai gantinya. Gunakan nama pengaturan runtimeconfig.json sebagai nilai Include atribut . Misalnya, lihat properti MSBuild.

Budaya yang telah ditentukan sebelumnya

  • Mengonfigurasi apakah aplikasi dapat membuat budaya selain budaya yang invarian saat mode globalisasi-invariant diaktifkan.
  • Jika Anda menghilangkan pengaturan ini, .NET membatasi pembuatan budaya dalam mode globalisasi-invariant. Ini sama dengan mengatur nilai ke true.
  • Untuk mengetahui informasi selengkapnya, lihat Pembuatan kultur dan pemetaan kasus dalam mode globalisasi-invarian.
Nama pengaturan Nilai Pengenalan
runtimeconfig.json System.Globalization.PredefinedCulturesOnly true - Dalam mode globalisasi-invariant, jangan izinkan penciptaan budaya apa pun kecuali budaya invarian.
false - Memungkinkan penciptaan budaya apa pun.
.NET 6
Properti MSBuild PredefinedCulturesOnly true - Dalam mode globalisasi-invariant, jangan izinkan penciptaan budaya apa pun kecuali budaya invarian.
false - Memungkinkan penciptaan budaya apa pun.
.NET 6
Variabel lingkungan DOTNET_SYSTEM_GLOBALIZATION_PREDEFINED_CULTURES_ONLY true - Dalam mode globalisasi-invariant, jangan izinkan penciptaan budaya apa pun kecuali budaya invarian.
false - Memungkinkan penciptaan budaya apa pun.
.NET 6