4 out of 17 rated this helpful - Rate this topic

HttpServerUtility.MapPath Method

Returns the physical file path that corresponds to the specified virtual path on the Web server.

Namespace:  System.Web
Assembly:  System.Web (in System.Web.dll)
public string MapPath(
	string path
)

Parameters

path
Type: System.String
The virtual path of the Web server.

Return Value

Type: System.String
The physical file path that corresponds to path.
Exception Condition
HttpException

The current HttpContext is null.

If path is null, then the MapPath method returns the full physical path of the directory that contains the current application.

Security note Security Note

The MapPath method potentially contains sensitive information about the hosting environment. The return value should not be displayed to users.

The following example returns the physical path of the virtual directory that contains the specified Web site. In this example, the slash (/) at the beginning of the path indicates an absolute virtual path to the site.

To read MapPath in a code-behind module, use HttpContext.Current.Server.MapPath.


String FilePath;
FilePath = Server.MapPath("/MyWebSite");
   


.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Did you find this helpful?
(1500 characters remaining)
Community Content Add
Annotations FAQ
Throws HttpException when you traverse too high up
Server.MapPath(@"..\..\..\..\..\..\..\Whatever"); $0will throw System.Web.HttpException: Cannot use a leading .. to exit above the top directory.$0
Different Path Bits
See this article for a great explanation of the different types of paths you can map ("~/...", "/...", etc.):

http://stackoverflow.com/questions/275781/server-mappath-server-mappath-server-mappath-server-mappath
creating a complete URL for a particular path
See also Page.ResolveUrl("~/default.aspx")  which gives you a URL for a particular path.