HttpRequest.AppRelativeCurrentExecutionFilePath Property
Updated: July 2009
Gets the virtual path of the application root and makes it relative by using the tilde (~) notation for the application root (as in "~/page.aspx").
Assembly: System.Web (in System.Web.dll)
The following example uses the AppRelativeCurrentExecutionFilePath property to set the URL of an Image control to an image in the same directory as the page. Run this page at different levels of a directory structure to see the resulting AppRelativeCurrentExecutionFilePath property values.
<%@ Page Language="VB"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <script runat="server"> Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) ' Get an image that is in the same directory as the currently executing control. Image1.ImageUrl = VirtualPathUtility.GetDirectory( _ Request.AppRelativeCurrentExecutionFilePath) + "image1.jpg" Label1.Text = "App-relative Image URL = " + Image1.ImageUrl End Sub </script> <head id="Head1" runat="server"> <title>HttpRequest AppRelativeCurrentExecutionFilePath</title> </head> <body> <form id="form1" runat="server"> <div> <asp:Image ID="Image1" runat="server" /><br /> <asp:Label ID="Label1" runat="server" /> </div> </form> </body> </html>
The following example uses the AppRelativeCurrentExecutionFilePath property to programmatically set the path to a resource, based on the current path of the page.
<%@ Page Language="VB" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server"> Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Label1.Text = Request.ApplicationPath Image1.ImageUrl = Request.ApplicationPath + "/images/Image1.gif" Label2.Text = Image1.ImageUrl Label3.Text = Request.AppRelativeCurrentExecutionFilePath If (VirtualPathUtility.GetDirectory( _ Request.AppRelativeCurrentExecutionFilePath).Equals( _ "~/Members/")) _ Then Image2.ImageUrl = Request.ApplicationPath & _ "/memberimages/Image1.gif" Else Image2.ImageUrl = Request.ApplicationPath & _ "/guestimages/Image1.gif" End If Label4.Text = Image2.ImageUrl End Sub </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head runat="server"> <title>HttpRequest.ApplicationPath Example</title> </head> <body> <form id="form1" runat="server"> <div> This is the ApplicationPath from the current page:<br /> <asp:Label ID="Label1" runat="server" ForeColor="Brown" /><br /> Use it to link to resources at fixed locations in the application.<br /> <asp:Image ID="Image1" runat="server" /> <asp:Label ID="Label2" runat="server" ForeColor="Brown" /> <br /><br /> This is the AppRelativeCurrentExecutionFilePath to the current page:<br /> <asp:Label ID="Label3" runat="server" ForeColor="Brown" /><br /> Use it to help programatically construct links to resources based on the location of the current page.<br /> <asp:Image ID="Image2" runat="server" /> <asp:Label ID="Label4" runat="server" ForeColor="Brown" /> </div> </form> </body> </html>
Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.