您现在的位置:动易网络>> 帮助文档>> SQL SERVER>>正文内容

关于ResolveClientUrl和ResolveUrl的使用问题


两个方法都是传递一个相对的 URL,然后返回一个相对于当前客户端浏览器的相对URL地址
但是两者的返回值,却截然不同
ResolveClientUrl返回相对于当前页面下文件的地址
ResolveUrl则返回页面所在应用程序下的相对地址
例如:
页面:~/Student/main.aspx
图像:~/Images/copy.gif
(这里~表示应用程序根目录)
使用一:
resolveClientUrl=Page.ResolveClientUrl("Images/copy.gif")
resolveUrl=Page.ResolveUrl("Images/copy.gif")
在页面main.aspx里使用copy.gif图像,则使用标题上的两种方法返回的结果如下
ResolveClientUrl:Images/copy.gif
ResolveUrl:/Student/Images/copy.gif
--------------------------------------------------------------------------------

使用二:

resolveClientUrl=Page.ResolveClientUrl("~/Images/copy.gif")

resolveUrl=Page.ResolveUrl("~/Images/copy.gif")

在页面main.aspx里使用copy.gif图像,则使用标题上的两种方法返回的结果如下

ResolveClientUrl:../Images/copy.gif

ResolveUrl:/Images/copy.gif

--------------------------------------------------------------------------------

结论

所以在使用ResolveClientUrl和ResolveUrl的时候一定要注意两者的区别

在使用相对URL地址时一定要在前面加上(~)或(~/),这样就万无一失了

不过使用这两种方法返回的物理路径(Server.MapPath),都是一样的
 


感动 同情 无聊 愤怒 搞笑 难过 高兴 路过
【字体: 】【收藏】【打印文章】【查看评论

相关文章

    没有相关内容