Freigeben über


HttpServerUtility.MapPath(String) Methode

Definition

Gibt den physischen Dateipfad zurück, der dem angegebenen virtuellen Pfad entspricht.

public:
 System::String ^ MapPath(System::String ^ path);
public string MapPath (string path);
member this.MapPath : string -> string
Public Function MapPath (path As String) As String

Parameter

path
String

Der virtuelle Pfad zur Webanwendung.

Gibt zurück

String

Der physische Dateipfad auf dem Webserver, der path entspricht.

Ausnahmen

Der aktuelle HttpContext ist null.

- oder - path ist ein physischer Pfad, es wurde aber ein virtueller Pfad erwartet.

Beispiele

Das folgende Beispiel zeigt, wie Sie die physische Datei eines relativen virtuellen Pfads abrufen. Der Code befindet sich in der Codebehind-Datei für eine Webseite und verwendet das Standardobjekt Server .

public partial class _Default : Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string pathToFiles = Server.MapPath("/UploadedFiles");
    }
}
Public Class _Default
    Inherits Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
        Dim pathToFiles = Server.MapPath("/UploadedFiles")
    End Sub
End Class

Das nächste Beispiel ähnelt dem vorherigen Beispiel, außer es zeigt, wie ein physischer Pfad aus einer Klasse abgerufen wird, die sich nicht in der CodeBehind-Datei befindet.

public class SampleClass
{
    public string GetFilePath()
    {
        return HttpContext.Current.Server.MapPath("/UploadedFiles");
    }
}
Public Class SampleClass
    Public Function GetFilePath() As String
        Return HttpContext.Current.Server.MapPath("/UploadedFiles")
    End Function
End Class

Hinweise

Wenn path die nullMethode ist, gibt die MapPath Methode den vollständigen physischen Pfad des Verzeichnisses zurück, der die aktuelle Anforderung für den Pfad enthält. Der relative Pfad muss keine vorhandene Datei oder einen vorhandenen Ordner für diese Methode angeben, um einen Wert zurückzugeben. Sie können jedoch keinen Pfad außerhalb der Webanwendung angeben.

Wichtig

Die MapPath Methode enthält potenziell vertrauliche Informationen über die Hostingumgebung. Der Rückgabewert sollte nicht für Benutzer angezeigt werden.

Eine Webanwendung, die sich befindet C:\ExampleSites\TestMapPath , gibt die folgenden Ergebnisse zurück:

Anforderung von path Rückgabewert
RootLevelPage.aspx null C:\ExampleSites\TestMapPath
RootLevelPage.aspx "/DownOneLevel/DownLevelPage.aspx" C:\ExampleSites\TestMapPath\DownOneLevel\DownLevelPage.aspx
RootLevelPage.aspx "/NotRealFolder" C:\ExampleSites\TestMapPath\NotRealFolder
RootLevelPage.aspx ".. /OutsideApplication" HttpException
/DownOneLevel/DownLevelPage.aspx null C:\ExampleSites\TestMapPath\DownOneLevel
/DownOneLevel/DownLevelPage.aspx ".. /RootLevelPage.aspx" C:\ExampleSites\TestMapPath\RootLevelPage.aspx

Gilt für