2016-02-29 42 views
1

有沒有一種方法可以在我的系統的本地時區的基礎上在我的asp.net Web窗體中提供本地化?我想從時區更改頁面的文化(CurrentCulture和CurrentUICulture)。我已經通過在所有網站上提供網頁上的手動鏈接來實現這一點......通過點擊西班牙語,我們找到了西班牙語用戶界面。我所做的是,我從該鏈接生成一個頁面請求,並從該請求中獲取語言,最後設置文化。 as基於時區的asp.net Web窗體中的本地化

protected override void InitializeCulture() 
    { 
     if(Request["Language"] != null) 
     { 
      Thread.CurrentThread.CurrentCulture = new CultureInfo(Request["Language"].ToString()); 
      Thread.CurrentThread.CurrentUICulture = new CultureInfo(Request["Language"].ToString()); 
     } 
     base.InitializeCulture(); 
    } 

現在我想在用戶系統的時區的幫助下做同樣的事情。 如果我的問題不清楚,請讓我知道。

回答

0

ASP.NET通過web.config部分爲自動語言環境切換提供了一些本機支持。

<configuration> 
    <system.web> 
    <globalization culture="auto:en-US" uiCulture="fr" /> 
    </system.web> 
</configuration> 

如果可以找到匹配項,此設置會自動將ASP.NET請求切換到瀏覽器客戶端的語言。如果瀏覽器沒有提供語言,或者該語言無法與.NET安裝的文化之一相匹配,則使用回退值 - 在本例中爲en-US。