如何给asp:本地化本地化文本?
我的ASP.NET页面有一些HTML代码:如何给asp:本地化本地化文本?
Default.aspx的:
<h2><asp:Localize meta:resourcekey="lblTitle" Text="Welcome to so" runat="server"></h2>
现在我要本地化的文本。所以我创建了一个资源文件Default.aspx.resx
。下面的例子Microsoft,Microsoft,Microsoft,CodeProject,并Stackoverflow我创建lblTitle.Text
条目:
除小红错误指示灯的提示说,
资源名称“lblTitle。文本“不是有效的标识符。
我如何本地化与asp:Localize
?我如何本地化与meta:
?我如何创建一个resx?
更新:更名App_GlobalResources
到App_LocalResources
:
的Web.config(部分):
<system.web>
<compilation debug="true" targetFramework="4.0"/>
更新2:我不明白的是,我是按照说明on MSDN:通过使用资源编辑
-
在Solution Explorer中
要编辑的资源文件,打开Sample.aspx.resx。
在资源编辑器,值以下,是为您放置到页面控件的每个 的文本性能。在这里更改值 将更改默认文化的值。
集ButtonResource1.Text到编辑英语课文。
保存文件。
我也试过
- lblTitle。文字
- lblTitleText
- lblTitle_Text
- lblTitle
- lblTitleText
你做的一切都是对的,但把你的ressource文件中的错误的文件夹。使用App_LocalResources
而不是App_GlobalResources
。
对本地和全球的ressource文件之间的差异的详细信息请参见MSDN:
本地资源文件是一个仅适用于一个ASP.NET页面或用户控件(一个ASP.NET文件具有.aspx,.ascx或.master的文件扩展名)。您将本地资源文件放在具有保留名称App_LocalResources的文件夹中。与根App_GlobalResources文件夹不同,App_LocalResources文件夹可位于应用程序中的任何文件夹中。您可以使用资源文件的名称将一组资源文件与特定网页相关联。
我不能做一切正确的,因为它仍然抱怨'lblTitle.Text'? –
您是否将Default.aspx.resx移至App_LocalRessources?对我来说,这使得警告消失。你正在使用.NET 4.0,对吧? – magnattic
是的;我用web.config中的相关片段更新了问题,显示了定位“4.0”。 –
我更新了我的答案,应该像现在描述的那样工作,我测试了它。 :) – magnattic