当页面路径以反斜杠结尾时,ResolveClientUrl

时间:2012-04-19 10:33:15

标签: asp.net

我注意到Page.ResolveClientUrl解析为一个不正确的路径,当它使用的页面的URL以反斜杠结尾时。例如:

http://localhost/Default.aspx
-> Page.ResolveClientUrl("~/Styles/style.css") returns "Styles/style.css" (correct)

http://localhost/Default.aspx\
-> Page.ResolveClientUrl("~/Styles/style.css") returns "../Styles/style.css" (incorrect)

为什么会发生这种情况,如何防止返回错误的路径?

1 个答案:

答案 0 :(得分:0)

您可以使用ResolveUrlResolveClientUrl返回相对于当前页面的路径,ResolveUrl返回相对于站点根目录的路径。

Page.ResolveUrl("~/layout/images/andornotLogo.gif")

"/layout/images/andornotLogo.gif"

Page.ResolveClientUrl("~/layout/images/andornotLogo.gif")

"../layout/images/andornotLogo.gif"