首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >aspx页面内的内联C#代码出现错误

问aspx页面内的内联C#代码出现错误
EN

Stack Overflow用户
提问于 2020-03-11 23:02:34
回答 1查看 108关注 0票数 0

所以基本上我有一个asp.net项目,在aspx页面中的HTML代码中,我使用csharp注解来放置c#代码。

因此,当我尝试将资源代码放入其中时,它会给出错误。检查下面的示例。

代码语言:javascript
复制
<asp:HyperLink runat="server" data-toggle="tab" href="#Groups" Text="<%$ Resources:Resource,rs_test %>" ID="link_Groups" CssClass="hub_mediumFont" />

在这一行中,我们可以看到c#代码写在双引号内,这可以很好地工作,但是一旦我尝试在双引号外使用C#,它就不能工作。例如

代码语言:javascript
复制
<span><%$ Resources:Resource,rs_test %></span>

这不起作用。我尝试过<%:....%>,但它仍然是一样的。

谁能告诉我为什么会发生这样的事情?

EN

回答 1

Stack Overflow用户

发布于 2020-03-12 01:35:46

问题不在于双引号。来自Working with Resources in Web Pages

创建资源文件后,即可在ASP.NET网页中使用它们。通常使用资源来填充页面上控件的属性值。例如,您可以使用资源来设置Button控件的Text属性,而不是将该属性硬编码为特定字符串。

所以你不能直接对静态字符串使用Resources,你可以把资源放在像Label这样的asp.net控件中:

代码语言:javascript
复制
<asp:Label runat="server" Text="<%$ Resources:Resource,rs_test %>" />

或者你可以使用Localize控件来处理静态文本。来自Localizing Static Text

如果页包含静态文本,则可以使用ASP.NET本地化,方法是将其包含在Localize控件中,然后使用显式本地化来设置静态文本。Localize控件不呈现标记;它的唯一功能是充当本地化文本的占位符。

代码语言:javascript
复制
<asp:Localize runat="server" Text="<%$ Resources:Resource,rs_test %>" />
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60638980

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档