我使用 ListView 来显示(有趣的是)数据列表,包括超链接。这是我的项目模板(ascx 文件):
<a href='<%# DataBinder.Eval(CType(Container, ListViewDataItem).DataItem, "ID","/Pages/Image.aspx?id={0}").ToString()%>'
title='View <%# DataBinder.Eval(CType(Container, ListViewDataItem).DataItem, "Title")%>'>
<%# DataBinder.Eval(CType(Container, ListViewDataItem).DataItem, "CardNo")%> -
<%# DataBinder.Eval(CType(Container, ListViewDataItem).DataItem, "Title")%></a>
我在正确解析链接时遇到问题,因为同一模板在整个项目中多次重复使用,并且子文件夹中的页面失败。我想我正在寻找一个 Server.MapPath
等效项,以便我可以使用 ~ 来获取相对于 root 的路径,但是如何将其插入到我的 HTML 中?
更新:问题是由于我的项目在我的计算机上的 LocalHost 根目录的子文件夹中运行而引起的。在生产中,项目本身位于根目录中,不会出现此问题。
最佳答案
您正在寻找ResolveClientUrl
或ResolveUrl
.
关于asp.net - 如何解析 ASP ListView 模板中的相对路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6004377/