我一直在使用ResolveUrl在ASP.NET文件中添加CSS和Javascript.
但我通常会看到ResolveClientUrl的选项.两者有什么区别?
我什么时候应该使用ResolveClientUrl?
小智 35
这是一个简单的例子:
//Returns: ../HomePage.aspx
String ClientURL = ResolveClientUrl("~/HomePage.aspx");
//Returns: /HomePage.aspx
String RegURL = ResolveUrl("~/HomePage.aspx");
//Returns: C:\inetpub\wwwroot\MyProject\HomePage.aspx
String ServerMappedPath = Server.MapPath("~/HomePage.aspx");
//Returns: ~/HomePage.aspx
String appRelVirtPath = AppRelativeVirtualPath;
//Returns: http://localhost:4913/
String baseUrl = Request.Url.GetLeftPart(UriPartial.Authority) + Request.ApplicationPath;
//Returns: "http://localhost:4913/HomePage.aspx"
String absUri = Request.Url.AbsoluteUri;
Run Code Online (Sandbox Code Playgroud)
Jur*_*uri 13
根据MSDN文档:
适用于浏览器的指定资源的完全限定URL.
使用ResolveClientUrl方法返回适合客户端使用的URL字符串,以访问Web服务器上的资源,例如图像文件,指向其他页面的链接等.
转换后的网址.
如果relativeUrl参数包含绝对URL,则URL将保持不变.如果relativeUrl参数包含相对URL,则该URL将更改为对当前请求路径正确的相对URL,以便浏览器可以解析该URL.
例如,请考虑以下情形:
客户端已请求包含用户控件的ASP.NET页面,该用户控件具有与之关联的图像.
ASP.NET页面位于/Store/page1.aspx.
用户控件位于/Store/UserControls/UC1.ascx.
图像文件位于/UserControls/Images/Image1.jpg.
如果用户控件将图像的相对路径(即/Store/UserControls/Images/Image1.jpg)传递给ResolveUrl方法,则该方法将返回值/Images/Image1.jpg.
我认为这很好地解释了它.
| 归档时间: |
|
| 查看次数: |
46690 次 |
| 最近记录: |