Dot-Net

如何從 App.Config 文件設置 CultureInfo.CurrentCulture?

  • February 1, 2012

我需要通過 App.Config 文件設置我的應用程序的文化,以便自動使用“pt-BR”來解析日期,而無需手動通知每個操作的文化。

據我所知,globalization可以在 Web.Config 文件的部分內定義一個部分system.web,但我正在執行一個控制台應用程序,我無法弄清楚這一點。

任何想法?

我不知道從 App.config 設置它的內置方法,但您可以像這樣在 App.config 中定義一個鍵

<configuration>
   <appSettings>
       <add key="DefaultCulture" value="pt-BR" />
   </appSettings>
</configuration>

並在您的應用程序中讀取該值並設置文化

CultureInfo culture = new CultureInfo(ConfigurationManager.AppSettings["DefaultCulture"]);
Thread.CurrentThread.CurrentCulture = culture;
Thread.CurrentThread.CurrentUICulture = culture;

此外,正如@Ilya 所提到的,從.NET 4.5 開始,您可以設置一次預設區域性,而不是每個執行緒:

CultureInfo.DefaultThreadCurrentCulture = culture
CultureInfo.DefaultThreadCurrentUICulture = culture

引用自:https://stackoverflow.com/questions/9104084