ASP.NET WebForms : Why do relative paths within user controls work locally, 但部署时不是?

标签 asp.net user-controls relative-path

重写问题

在我的一生中,我无法让相对图像路径在使用 VS 的开发服务器和发布到远程 IIS 服务器之间的用户控件内一致工作。我不想通过添加 runat="server" 使我的图像成为服务器标签。我希望它是严格的客户端,并且我不想使用任何骗局代码黑客。我想解决断开连接的问题,所以这是我的问题:

我的图像存储在~/images中。 我的用户控件存储在~/usercontrols/anothersubfolder中.

当我这样做时...

<img id="myimage" src="../../Images/help.png" alt="" />

...使用 VS 开发服务器 (localhost) 时会加载镜像,但当我部署到远程 IIS 虚拟目录时不会加载镜像。但是,当我这样做时...

<img id="myimage" src="<%=Request.ApplicationPath %>/Images/help.png" alt="" />

...当我远程发布但不使用开发服务器时它可以工作!

我需要一个既适用于 VS 开发服务器又适用于远程发布的解决方案。正如我所说,我不想添加 runat="server"到我的图像标签或使用任何代码黑客。这里存在一个脱节,我想知道如何解决这个问题。

最佳答案

关于ASP.NET WebForms : Why do relative paths within user controls work locally, 但部署时不是?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11866865/

相关文章:

jquery - 使用 jQuery 将具有相对路径的外部 HTML 页面加载到 DIV 中

c# - 如何在特定位置的 div 中添加用户控件?

c# - 如何将 UserControl 附加到 MVP 模式中的窗体?

c# - WinForms 工具提示未显示

c# - 使用相同方法自定义用户控件,以相同的方式调用它们

java - 规范路径不起作用

c# - OpenFileDialog InitialDirectory 不接受相对路径吗?

javascript - Window.Open 使用 PDF 流而不是 PDF 位置

c# - 在 SharePoint Web 服务中使用 ViewFields 返回特定列

javascript - 如何显示图片弹出窗口