我有一个资源,密钥会有一个空格,比如
My key | Some string
在我的aspx页面中,我想打电话
<%$ Resource:Resources, My Key %>
是否有一些语法允许我使用“My Key”而不是“MyKey”?
答案 0 :(得分:0)
<击>否。资源设置的关键字可能不包含空格。编译资源文件,以便密钥成为变量名。这相当于说:
int My int;
这是不允许的。
我把它拿回来。应用了一些测试,这可以完成,基本上就像你描述的那样。我从顶部看到的一些事情是,在网站中,资源文件不能位于App_GlobalResources
所需的App_LocalResources
文件夹中。我将我的资源文件命名为与我的页面名称相同,如:Default.aspx.resx
。 App_GlobalResources
文件夹中的资源自动设置在内部范围。
在其中我设置了2个键和2个值:
ThisKey | ThisValue
My Key | My Value
要从网页中的控件中访问它们,我使用超链接控件来测试它:
<asp:HyperLink ID="hlLink" runat="server" Text='<%$ Resources: ThisKey%>'></asp:HyperLink>
哪个输出带有文本ThisValue
的链接。还有:
<asp:HyperLink ID="hlLink" runat="server" Text='<%$ Resources: My Key %>'></asp:HyperLink>
哪个输出带有“我的价值”文字的链接。我注意到如果我试图通过使用Resources: Default.aspx, My Key
来指定“class”参数,那么它会被轰炸。它只是成功使用App_LocalResources
文件夹中的资源,并且只有在指定给该文件名时才会成功。
我确信这不是执行此操作的唯一方法,但此方法成功地允许该页面的键名称中包含空格。