ユーザーの選択に基づいて複数の言語で表示する必要があるWebページがあります。そのためには、asp.netの各WebページでRESXファイルを使用しています。私はブラウザで言語の自動検出を使いたくないのですが、ユーザの選択に基づいて言語を設定したいと思います。これを達成するために、私は次のことをやっている:動的にRESXファイルが読み込まれない
Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("es-MX", false);
Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("es-MX", false);
OR
Page.Culture = "es-MX";
Page.UICulture = "es-MX";
しかし、これらのどちらも期待通りに働いています!私はページのInitメソッドでCultureを初期化していますが、常にデフォルト言語を表示します。私はそれらのプロパティの値を検査しており、それらは正しく文化を持っていますが、RESXファイルを使ってレンダリングされていません。何か案は?提案?
おかげ
ドミトリーありがとうございますが、これは私が扱うリソースファイルのみを読み込みます。私がやっていることは、ブラウザーのユーザー言語に基づいてラベルの値を自動的に読み込んだ後、適切なRESXファイルを探し、そこから値を取得するmeta:resource構文を使用することです。私はいつでもそれを読んでいない。すべてがCLRによってオンザフライで行われます。 –
あなたはpage.cultureをオーバーライドすることができます –