ASP.NET MVC 表达式“按原样”呈现

发布于 2024-09-13 22:07:48 字数 472 浏览 5 评论 0原文

我有以下行:

<link href="<%= Links.Content.Site_css %>" rel="stylesheet" type="text/css" />

被渲染为

<link href="Views/Shared/%3C%25=%20Links.Content.Site_css%20%25%3E" rel="stylesheet" type="text/css" />

So 表达式不被执行。如果我删除引号:

<link href=<%= Links.Content.Site_css %> rel="stylesheet" type="text/css" />

表达式会被执行,但标记会变得与 xhtml 不兼容。解决这个问题的正确方法是什么?

I have the following line:

<link href="<%= Links.Content.Site_css %>" rel="stylesheet" type="text/css" />

which is rendered to

<link href="Views/Shared/%3C%25=%20Links.Content.Site_css%20%25%3E" rel="stylesheet" type="text/css" />

So expression is not executed. If I remove quotes:

<link href=<%= Links.Content.Site_css %> rel="stylesheet" type="text/css" />

expression is executed but markup becomes xhtml incompatible. What is the right way to fix this problem?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

英雄似剑 2024-09-20 22:07:48

只需删除标签上的 runat="server" 即可修复它。

Just remove the runat="server" on your tag and it should fix it.

妳是的陽光 2024-09-20 22:07:48

使用单引号而不是双引号。

<link href='<%= Links.Content.Site_css %>' rel="stylesheet" type="text/css" />

对于这种特殊情况,我将使用 MVC futures 程序集中的 Css 辅助方法:

<%:Html.Css(Links.Content.Site_css) %>

Use single quotes instead of double quotes.

<link href='<%= Links.Content.Site_css %>' rel="stylesheet" type="text/css" />

For that special case, I'd use Css helper method from MVC futures assembly:

<%:Html.Css(Links.Content.Site_css) %>
智商已欠费 2024-09-20 22:07:48

这可能是一个解决方法

<link href=<%= '"' + Links.Content.Site_css + '"' %> rel="stylesheet" type="text/css" />

(我没有 ASP 经验,很抱歉,如果这只是无效的语法)

This might be a workaround

<link href=<%= '"' + Links.Content.Site_css + '"' %> rel="stylesheet" type="text/css" />

(I have no experience with ASP, sorry if that's just invalid syntax)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文