私はasp.netローカリゼーションを使用してマルチランゲージのウェブサイトを作成しようとしていますが、基本的に私は英語とアラビア語の2つのグローバルリソースを持っています。asp.netは現在のカルチャを変更できません
私は2つの言語をcontainigドロップダウンリストを追加しました:
<asp:DropDownList runat="server" ID="changeLang" AutoPostBack="true" >
<asp:ListItem Value="en">English</asp:ListItem>
<asp:ListItem Value="ar">Arabic</asp:ListItem>
</asp:DropDownList>
と私は、このコードビハインド使用しています:の値をデバッグするに
protected override void InitializeCulture() //changing the languages
{
string lang = Request["changeLang"];
if (lang != null && lang != "")
{
Thread.CurrentThread.CurrentUICulture = new CultureInfo(lang);
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(lang);
}
}
しかし、言語習慣の変化とをstring langは常にnullです。
私はasp.net 4.0を使用しています。
何が問題なのです、ありがとう。
最後に 'MyBase.InitializeCulture()'がありません。 http://msdn.microsoft.com/en-us/library/bz9tc508%28v=vs.80%29.aspx –
@TimSchmelter - 私はコードの最後に追加しようとしましたが、違いはありませんでした。 – Wahtever