グローバリゼーションのランタイム構成オプション
[アーティクル]
04/06/2022
1 人の共同作成者
この記事の内容
インバリアント モード
.NET Core を、カルチャ固有のデータや動作にアクセスせずにグローバリゼーション インバリアント モードで実行するかどうかを決定します。
この設定を省略した場合、アプリはカルチャ データにアクセスできる状態で実行されます。 これは、値を false
に設定した場合と同じです。
詳細については、「.NET Core のグローバリゼーション インバリアント モード 」を参照してください。
設定の名前
値
runtimeconfig.json
System.Globalization.Invariant
false
- カルチャ データにアクセスするtrue
- インバリアント モードで実行する
MSBuild のプロパティ
InvariantGlobalization
false
- カルチャ データにアクセスするtrue
- インバリアント モードで実行する
環境変数
DOTNET_SYSTEM_GLOBALIZATION_INVARIANT
0
- カルチャ データにアクセスする1
- インバリアント モードで実行する
使用例
* runtimeconfig.json* ファイル:
{
"runtimeOptions": {
"configProperties": {
"System.Globalization.Invariant": true
}
}
}
プロジェクト ファイル:
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<InvariantGlobalization>true</InvariantGlobalization>
</PropertyGroup>
</Project>
年号の範囲
設定の名前
値
runtimeconfig.json
Switch.System.Globalization.EnforceJapaneseEraYearRanges
false
- 緩和された範囲チェックtrue
- オーバーフローによって例外が発生する
環境変数
N/A
N/A
日本の日付の解析
年として "1" または "元年" のいずれかを含む文字列を正しく解析するか、または "1" のみをサポートするかを決定します。
この設定を省略した場合、年として "1" または "元年" が含まれる文字列は、正常に解析されます。 これは、値を false
に設定した場合と同じです。
詳細については、「複数の時代 (年号) のカレンダーで日付を表す 」を参照してください。
設定の名前
値
runtimeconfig.json
Switch.System.Globalization.EnforceLegacyJapaneseDateParsing
false
- "元年" または "1" をサポートするtrue
- "1" のみをサポートする
環境変数
N/A
N/A
和暦の元年を "元年" または "1" のどちらで書式設定するかを決定します。
この設定を省略した場合、最初の年は "元年" として書式設定されます。 これは、値を false
に設定した場合と同じです。
詳細については、「複数の時代 (年号) のカレンダーで日付を表す 」を参照してください。
設定の名前
値
runtimeconfig.json
Switch.System.Globalization.FormatJapaneseFirstYearAsANumber
false
- "元年" として書式設定するtrue
- 数字として書式設定する
環境変数
N/A
N/A
NLS
.NET で Windows アプリ用に各国語サポート (NLS) または International Components for Unicode (ICU) のグローバリゼーション API が使用されるかどうかを決定します。 .NET 5 以降のバージョンの場合、Windows 10 May 2019 Update 以降のバージョンでは ICU グローバリゼーション API が既定で使用されます。
この設定を省略した場合、.NET では ICU グローバリゼーション API が既定で使用されます。 これは、値を false
に設定した場合と同じです。
詳細については、「グローバリゼーション API では Windows 上の ICU ライブラリが使用される 」を参照してください。
設定の名前
値
導入時期
runtimeconfig.json
System.Globalization.UseNls
false
- ICU グローバリゼーション API を使用しますtrue
- NLS グローバリゼーション API を使用します
.NET 5
環境変数
DOTNET_SYSTEM_GLOBALIZATION_USENLS
false
- ICU グローバリゼーション API を使用しますtrue
- NLS グローバリゼーション API を使用します
.NET 5
定義済みのカルチャ
設定の名前
値
導入時期
runtimeconfig.json
System.Globalization.PredefinedCulturesOnly
true
- グローバリゼーション インバリアント モードでは、インバリアント カルチャ以外のカルチャの作成を許可しません。false
- 任意のカルチャの作成を許可します。
.NET 6
MSBuild のプロパティ
PredefinedCulturesOnly
true
- グローバリゼーション インバリアント モードでは、インバリアント カルチャ以外のカルチャの作成を許可しません。false
- 任意のカルチャの作成を許可します。
.NET 6
環境変数
DOTNET_SYSTEM_GLOBALIZATION_PREDEFINED_CULTURES_ONLY
true
- グローバリゼーション インバリアント モードでは、インバリアント カルチャ以外のカルチャの作成を許可しません。false
- 任意のカルチャの作成を許可します。
.NET 6