サポートしたい言語ごとに、以下のような名前のリソース ファイルがいくつかあります。
NavigationMenu.en-US.resx
NavigationMenu.ru-RU.resx
NavigationMenu.uk-UA.resx
ファイルはMySolution/Resources/NavigationMenu
フォルダにあります。
CurrentCulture
以下のCurrentUICulture
ように設定するアクションがあります
public ActionResult SetLanguage(string lang)
{
try
{
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(lang);
Thread.CurrentThread.CurrentUICulture = CultureInfo.CreateSpecificCulture(lang);
return Redirect(Request.UrlReferrer.AbsoluteUri);
}
catch(Exception)
{
return RedirectToAction("Index");
}
}
lang
パラメータ値はuk-UA
、ru-RU
またはen-US
ビュー内のどのリンクがクリックされたかによって異なります。また、Web 構成のグローバリゼーション定義セクションがあります。
<globalization requestEncoding="utf-8" responseEncoding="utf-8" culture="ru-RU" uiCulture="ru-RU" />
アプリケーションを開始すると、期待どおりにロシア語が表示されますが、SetLanguage
アクションを使用して言語を英語に変更しようとすると、ビューに言語の変更がありません。NavigationMenu.SomeProperty
まだロシア人です。私は何が欠けていますか?