asp.net服务器标签在发送到客户端之前无法解析

时间:2013-10-07 09:16:13

标签: asp.net iis webforms

我有一个遇到问题的WebForms网站。看看Firebug,我可以在主页面中看到以下行:

<link rel="stylesheet" href='<%= ResolveClientUrl("/css/site.css") %>' />

未在服务器上“执行”。因此,在Firebug中我得到了:

  

http://www.mysite.com/Master_Pages/%3C%25=%20ResolveClientUrl(%22/css/site.css%22)%20%25%3E

当我希望这是

  

http://www.mysite.com/css/site.css

以前运行良好,我已经在其他网站上使用过这种技术而且从来没有遇到任何问题,但是看不出为什么会突然停止工作。 我已经双重检查,我的头被设置为runat = server:

<head runat="server">

所以它应该在服务器上执行。 我也尝试将其更改为:

 <link rel="stylesheet" href=<%= ResolveClientUrl("/css/site.css") %> runat="server" />

我检查过的其他事情:

  • 应用程序池和网站都是针对.net框架的正确且相同的实例
  • 应用程序池已被回收以确保其清晰
  • 我可以在我的代码中找到断点

任何人都可以提出可能导致此问题的原因或我可以检查的内容吗?

由于

2 个答案:

答案 0 :(得分:1)

试试这个。

<link rel="stylesheet" type="text/css" href="css/site.css" />

这应该有用。

答案 1 :(得分:0)

ResolveClientUrl("/css/site.css")应为ResolveClientUrl("~/css/site.css")

并且您也省略了属性href的值的引号。