ASP.NET 网站路径【摘自MSDN】

ASP.NET 支持引用外部资源的各种方法。根据您使用的是客户端元素还是 Web 服务器控件,选择的引用方法将有所不同。

客户端元素

1.绝对Url路径 如果引用其他位置(例如外部网站)中的资源,则绝对 URL 路径非常有用。)

例如:<img src="http://www.contoso.com/MyApplication/Images/SampleImage.jpg" />

2.相对Url路径 此路径将根据网站根目录(而非应用程序根目录)进行解析。

如果将跨应用程序的资源(例如图像或客户端脚本文件)保留在网站根目录下的文件夹中,则网站根目录相对路径非常有用。

两种写法以及相应解析路径:

 

此示例路径假定 Images 文件夹位于网站根目录下。

 

a.     <img src="/Images/Upload.gif" />

==> http://www.contoso.com/Images/Upload.gif

b.     <img src="Images/Upload.gif" />

==> <img src="../Images/Upload.gif" />

服务器控件

1.注意点:使用相对路径时,相对页面、用户控件或包含该控件的主题的路径进行解析。

例如:在一个Controls文件夹下包含一个用户控件,其中有一个Image web服务器控件,其路径设置为src="Images/Upload.gif",解析路径为src="/Controls/Images/Upload.gif".

2.为避免上面现象产生,可以采用“~”跟运算符和文件夹来指定基于当前根目录的路径。

例如:<asp:image runat="server" id="Image1"    ImageUrl="~/Images/SampleImage.jpg" />

 

可以在服务器控件中的任何与路径有关的属性中使用 ~ 运算符。~ 运算符只能为服务器控件识别,并且位于服务器代码中。不能将 ~ 运算符用于客户端元素。

 

确定当前网站的物理文件路径

 

1.区别虚拟路径和物理路径

 

虚拟路径:

 

 

物理路径:

2.确定物理文件路径最常用的方法:HttpRequest 和 MapPath

HttpRequest的相关属性:

MapPath方法:

string rootPath = Server.MapPath("~");

传递给MapPath方法的路径必须是虚拟路径。

 

posted @ 2011-08-15 18:00  WILLPAN  阅读(352)  评论(0编辑  收藏  举报