This documentation is archived and is not being maintained.

Control.MapPathSecure Method

Retrieves the physical path that a virtual path, either absolute or relative, maps to.

Namespace: System.Web.UI
Assembly: System.Web (in system.web.dll)

protected public:
String^ MapPathSecure (
	String^ virtualPath
protected String MapPathSecure (
	String virtualPath
protected internal function MapPathSecure (
	virtualPath : String
) : String
Not applicable.



A relative or root relative URL.

Return Value

The physical path to the requested file.

Exception typeCondition


virtualPath is a null reference (Nothing in Visual Basic) or an empty string ("").

This method can only be used by server controls that have permissions to read files and which are part of fully trusted .dll files, such as System.Web.dll. This helps prevent security breaches.

The following example uses the MapPathSecure method to obtain the physical path of a virtual directory of the containing Page or UserControl object.

No code example is currently available or this language may not be supported.
// An HttpException occurs if the server control does not,;
// have permissions to read the resulting mapped file. 
output.Write("The Actual Path of the virtual directory : " 
    + MapPathSecure(get_TemplateSourceDirectory()) + "<br>");

// Get all the files from the absolute path of 'MyControl';
// using TemplateSourceDirectory which gives the virtual Directory.
String myFiles[] = Directory.GetFiles(MapPathSecure(
output.Write("The files in this Directory are <br>");

// List all the files.
for (int i = 0; i < myFiles.length; i++) {
    output.Write(myFiles.get_Item(i) + "<br>");

Windows 98, Windows Server 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0