0

当我打开 URL 重写以访问页面时,〜不再被应用程序根替换。

例如

<asp:image runat="server" ImageUrl="~/Images/image.png"/>

应该产生:

<img src="/testing/Images/image.png">

但它唯一的输出

<img src="/Images/image.png">

波浪号应该被替换为应用程序根路径,但看起来 IIRF 以某种方式弄乱了它?

有想法该怎么解决这个吗?

4

1 回答 1

0

波浪号 (~) 字符表示 ASP.NET 中应用程序的根目录。在将标记发送到客户端之前,它会替换为 ASP.Net 服务器控件中的适当值。

另一方面,IIRF 在进入 ASP.Net 管道之前重写 URL。它转换来自客户端的请求。

IIRF 修改请求,而 ASP.Net 转换响应中的波浪号。

因此,在发送给客户端的标记中,您永远不应该看到波浪号。

如果您在发送给客户端的标记中确实有波浪号,这可能是一个错误,您应该修改您的代码以正确替换它。

确保替换波浪号的一些指示:

于 2010-06-17T20:57:46.020 回答