問題: 既存のスレッドと新しく生成されたスレッドの両方を含めて、.NET アプリケーション内のすべてのスレッドに単一のカルチャ設定を適用するにはどうすればよいですか?
解決策: これは実現可能です。
.NET 4.5 以降のバージョンでは、CultureInfo.DefaultThreadCurrentCulture
プロパティは簡単なメソッドを提供します。アプリケーションの開始時にこのプロパティを設定すると、AppDomain
全体のデフォルト カルチャが確立されます。 既存および将来のすべてのスレッドは、この文化を継承します。
4.5 より前の .NET バージョンの場合、リフレクションを使用して AppDomain
のカルチャを調整できます。 CultureInfo
クラスには、スレッドが明示的に独自の m_userDefaultCulture
値を定義していない場合に s_userDefaultCulture
値を決定するプライベート静的フィールド (.NET バージョンに応じて CurrentCulture
または
このメソッドはネイティブ スレッド ロケールを変更しないことを理解することが重要です。 さらに、この技術を採用したアプリケーションを配布することは、互換性や予期せぬ問題が発生する可能性があるため、通常は推奨されません。 ただし、開発時やテスト時に役立つことがわかります。
以上が.NET アプリケーションのすべてのスレッドに 1 つのカルチャ設定を適用できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。