マスターページで使用しました。
<div class="menu_nav">
<ul>
<li>
<asp:HyperLink ID="HyperLink1" runat="server" meta:resourcekey="HyperLink1" NavigateUrl="~/Home.aspx">hello</asp:HyperLink>
</li>
<li><a href="AboutUs.aspx"><span>
<asp:Label ID="lblAboutUs" runat="server" Text="About Us"></asp:Label></span></a>
</li>
</ul>
</div>
そして私はこのコードを使用しました:
ResourceManager rm;
CultureInfo ci;
private void LoadString(CultureInfo ci)
{
lblCompanyName.Text = rm.GetString("siteName", ci);
lblSlogan.Text = rm.GetString("siteSlogan", ci);
lblAboutUs.Text = rm.GetString("menuAboutUs", ci);
HyperLink1.Text = rm.GetString("menuHome", ci);}
if (Session["cultureID"] =="1")
{
Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
rm = new ResourceManager("Resources.Strings",
System.Reflection.Assembly.Load("App_GlobalResources"));
ci = Thread.CurrentThread.CurrentCulture;
LoadString(ci);}
else if( Session["cultureID"] =="2")
{
Thread.CurrentThread.CurrentCulture = new CultureInfo("ja-JP");
rm = new ResourceManager("Resources.Strings",
System.Reflection.Assembly.Load("App_GlobalResources"));
ci = Thread.CurrentThread.CurrentCulture;
LoadString(ci); }
ラベル(ウェブサイト名を表示するためにラベルを使用)のみですべて問題あり<a href>
ませんが、メニューを作成するためにアンカー内のハイパーリンクまたはラベルを使用すると、日本語が表示されません(英語の文字で問題ありません)。ページソース(ブラウザ)を見ると、日本語が表示されています。問題は、resxからの日本語データが私のページにレンダリングされていないことです。どうすればこれを解決できますか?