WEBアプリは web.config でアプリケーションレベルのカルチャーを設定するとして、
1 2 3 4 5 6 7 |
<configuration> <system.web> <globalization culture="ja-JP" uiCulture="ja-JP" /> </system.web> </configuration> |
WEBアプリ以外は何でカルチャーを設定するのが良いのか調べました。
結論は、DefaultThreadCurrentCulture と DefaultThreadCurrentUICulture を設定すれば良いです。
ソースコードはGitHubで公開しています。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
static void Main(string[] args) { //const string = "ja-JP"; const string cultureName = "ru-RU"; //CultureInfo.CurrentCulture = new CultureInfo(cultureName, false); //CultureInfo.CurrentUICulture = new CultureInfo(cultureName, false); CultureInfo.DefaultThreadCurrentCulture = new CultureInfo(cultureName, false); CultureInfo.DefaultThreadCurrentUICulture = new CultureInfo(cultureName, false); //Thread.CurrentThread.CurrentCulture = new CultureInfo(cultureName, false); //Thread.CurrentThread.CurrentUICulture = new CultureInfo(cultureName, false); Console.WriteLine("CultureInfo.CurrentCulture.Name : " + CultureInfo.CurrentCulture.Name); Console.WriteLine("CultureInfo.CurrentUICulture.Name : " + CultureInfo.CurrentUICulture.Name); Console.WriteLine("CultureInfo.DefaultThreadCurrentCulture.Name : " + CultureInfo.DefaultThreadCurrentCulture.Name); Console.WriteLine("CultureInfo.DefaultThreadCurrentUICulture.Name : " + CultureInfo.DefaultThreadCurrentUICulture.Name); Console.WriteLine("Thread.CurrentThread.CurrentCulture.Name : " + Thread.CurrentThread.CurrentCulture.Name); Console.WriteLine("Thread.CurrentThread.CurrentUICulture.Name : " + Thread.CurrentThread.CurrentUICulture.Name); } |
実行結果
コメント