HttpServerUtility.MapPath(String) Метод

Определение

Возвращает физический путь к файлу, соответствующий указанному виртуальному пути.Returns the physical file path that corresponds to the specified virtual path.

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

Параметры

path
String

Виртуальный путь в веб-приложении.The virtual path in the Web application.

Возвраты

Физический путь к файлу на веб-сервере, соответствующий path.The physical file path on the Web server that corresponds to path.

Исключения

Текущий объект HttpContext имеет значение null.The current HttpContext is null.

-или--or- path является физическим путем, а требуется виртуальный путь.path is a physical path, but a virtual path was expected.

Примеры

В следующем примере показано, как получить физический файл относительного виртуального пути.The following example shows how to retrieve the physical file of a relative virtual path. Код находится в файле кода программной части для веб-страницы и использует объект по умолчанию Server .The code resides in the code-behind file for a web page and utilizes the default Server object.

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

Следующий пример похож на предыдущий пример, за исключением того, что он показывает, как получить физический путь из класса, который не находится в файле кода программной части.The next example is similar to the previous example except it shows how to retrieve a physical path from within a class that is not in the code-behind file.

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

Комментарии

Если path параметр nullимеет значение MapPath , метод возвращает полный физический путь к каталогу, содержащему текущий запрос пути.If path is null, the MapPath method returns the full physical path of the directory that contains the current request for the path. Относительный путь не требует указания существующего файла или папки, чтобы этот метод возвращал значение.The relative path does not need to specify an existing file or folder for this method to return a value. Однако нельзя указать путь за пределами веб-приложения.However, you cannot specify a path outside of the Web application.

Важно!

MapPath Метод потенциально содержит конфиденциальные сведения о среде размещения.The MapPath method potentially contains sensitive information about the hosting environment. Возвращаемое значение не должно отображаться пользователям.The return value should not be displayed to users.

Веб-приложение, которое находится в C:\ExampleSites\TestMapPath , возвращает следующие результаты.A Web application that resides at C:\ExampleSites\TestMapPath would return the following results:

Запрос изRequest from path возвращаемое значениеReturned value
Рутлевелпаже. aspxRootLevelPage.aspx null к:\ексамплеситес\тестмаппасC:\ExampleSites\TestMapPath
Рутлевелпаже. aspxRootLevelPage.aspx "/Довнонелевел/довнлевелпаже.аспкс""/DownOneLevel/DownLevelPage.aspx" C:\ExampleSites\TestMapPath\DownOneLevel\DownLevelPage.aspxC:\ExampleSites\TestMapPath\DownOneLevel\DownLevelPage.aspx
Рутлевелпаже. aspxRootLevelPage.aspx "/Нотреалфолдер""/NotRealFolder" к:\ексамплеситес\тестмаппас\нотреалфолдерC:\ExampleSites\TestMapPath\NotRealFolder
Рутлевелпаже. aspxRootLevelPage.aspx ".. /Аутсидеаппликатион ""../OutsideApplication" HttpException
/DownOneLevel/DownLevelPage.aspx/DownOneLevel/DownLevelPage.aspx null C:\ExampleSites\TestMapPath\DownOneLevelC:\ExampleSites\TestMapPath\DownOneLevel
/DownOneLevel/DownLevelPage.aspx/DownOneLevel/DownLevelPage.aspx ".. /Рутлевелпаже.аспкс ""../RootLevelPage.aspx" C:\ExampleSites\TestMapPath\RootLevelPage.aspxC:\ExampleSites\TestMapPath\RootLevelPage.aspx

Применяется к