2007年11月10日

Runtime指定AP的Culture Info

ASP.NET有一個多國語言的機制,利用Resource的方法,再根據你的Culture來決定要載入哪一個Dll的Resource檔。

而Culture一般而言都是直接在Web Config檔中設定,或是根據User的機器設定的語系來決定,
但是這樣做將無法讓使用者動態的去決定他要的語言,也就是多國語言無法進行線上的切換。

下面這段Code將是讓我們可以動態的去設定Culture Info,讓多國語言可以做線上的任意切換。
而Culture Info要自己想辦法記錄下來唷!不管是存在DB或是Cookie或是Session都可以...


Protected Overrides Sub InitializeCulture()
Me.UICulture = strCultureName
Me.Culture = strCultureName
System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture(strCultureName)
System.Threading.Thread.CurrentThread.CurrentUICulture = New System.Globalization.CultureInfo(strCultureName)

MyBase.InitializeCulture()
End Sub


strCultureName變數是你要去取得你自己控制的Culture Info

沒有留言:

張貼留言