2011-05-14 42 views
2

我使用一個ListView來顯示(有趣的)一個數據列表,包括一個超鏈接。這裏是我的項目模板(ASCX文件):如何解決ASP ListView模板中的相對路徑?

與鏈接正確解決,因爲這同一個模板是重複使用跨項目多次和失敗的子文件夾頁
<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等價物,以便我可以使用〜來獲取相對於根的路徑,但是如何將其插入到我的HTML中?

更新:問題是由於我的項目在我的機器上的LocalHost根目錄下運行的。在生產中,項目本身就是根,這個問題不會發生。

回答

3

您正在尋找ResolveClientUrlResolveUrl

+0

完美,但它看起來像一個東西背後的代碼,我如何將它添加到我的模板? – Simon 2011-05-14 20:06:49

+0

使用'<%#ResolveUrl(DataBinder.Eval(CType(Container,ListViewDataItem).DataItem,「ID」,「/ Pages/Image.aspx?id = {0}」))%>'作爲'href'值應該管用。 – 2011-05-14 21:20:38