我的ASP.NET Web窗体应用程序resx文件位于App_LocalResources \ fr.aspx.resx中,其键值为:hello_world。
现在我想在类Page.aspx上的ASPxLabel上使用它,所以我只是简单地说:
<dx:ASPxLabel ID="0" runat="server" Text="<%$ Resources:fr, hello_world %>"></dx:ASPxLabel>
但是我有错误:分析器错误消息:找不到带有密钥“msg”的资源对象。
我确信fr.aspx.resx已被公开,但仍然有Parser Error。我做错了什么?
答案 0 :(得分:1)
首先检查资源文件的名称。它必须遵循以下命名对话
pageName.extension.language.resx
如果您的aspx页面名称为Page.aspx,那么您应该拥有以下名称的资源文件。(您可以为其他语言和文化添加资源文件)
Page.aspx.fr.resx
检查你是否遵循这种说法。
对于aspx页面中的这个资源,你必须按照下面的标准进行操作
<%$Resources:Class,ResourceID%>
其中Class是资源文件的名称,如果它被编译为类,否则可以忽略它。 ResourceId是资源文件中的密钥。 在您的代码中,您正在设置资源,如下所示。检查资源文件是否具有类名为fr。
的代码隐藏Text="<%$ Resources:fr, hello_world %>">
有关详细信息,请访问以下链接 http://msdn.microsoft.com/en-us/library/ms227427(v=vs.90).aspx