HttpServerUtility.MapPath(String) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает физический путь к файлу, соответствующий указанному виртуальному пути.
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
Виртуальный путь в веб-приложении.
Возвращаемое значение
Физический путь к файлу на веб-сервере, соответствующий path
.
Исключения
Текущий HttpContext — null
.
-или-
path
является физическим путем, а требуется виртуальный путь.
Примеры
В следующем примере показано, как получить физический файл относительного виртуального пути. Код находится в файле кода программной части для веб-страницы и использует объект по умолчанию 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
Следующий пример аналогичен предыдущему, за исключением того, что он показывает, как получить физический путь из класса, который не находится в файле кода программной части.
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 метод возвращает полный физический путь к каталогу, который содержит текущий запрос на путь. Относительный путь не должен указывать существующий файл или папку для этого метода, чтобы возвращать значение. Однако невозможно указать путь за пределами веб-приложения.
Важно!
Метод MapPath потенциально содержит конфиденциальную информацию о среде размещения. Возвращаемое значение не должно отображаться для пользователей.
Веб-приложение, на котором находится C:\ExampleSites\TestMapPath
веб-приложение, возвращает следующие результаты:
Запрос из | path |
Возвращаемое значение |
---|---|---|
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 |