Partilhar via


VirtualPathUtility Classe

Definição

Fornece métodos de utilitário para operações de caminho virtual comuns.

public ref class VirtualPathUtility abstract sealed
public static class VirtualPathUtility
type VirtualPathUtility = class
Public Class VirtualPathUtility
Herança
VirtualPathUtility

Exemplos

O exemplo de código a seguir demonstra como usar a VirtualPathUtility classe e alguns de seus métodos. Primeiro, a FilePath propriedade gera o caminho virtual para a página da Web. Os GetFileNamemétodos e GetDirectory os GetExtensionmétodos retornam informações sobre o caminho virtual. Em seguida, a CurrentExecutionFilePath propriedade gera um caminho virtual da solicitação atual, que pode ser diferente da FilePath propriedade, se um Redirect método for chamado. Os IsAbsolutemétodos e ToAppRelative os IsAppRelativemétodos retornam informações sobre o caminho virtual.

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
  protected void Page_Load(object sender, EventArgs e)
  {
    // <Snippet2> 
    StringBuilder sb = new StringBuilder();
    String pathstring = Context.Request.FilePath.ToString();
    sb.Append("Current file path = " + pathstring + "<br />");
    sb.Append("File name = " + VirtualPathUtility.GetFileName(pathstring).ToString() + "<br />");
    sb.Append("File extension = " + VirtualPathUtility.GetExtension(pathstring).ToString() + "<br />");
    sb.Append("Directory = " + VirtualPathUtility.GetDirectory(pathstring).ToString() + "<br />");
    Response.Write(sb.ToString());
    // </Snippet2>
    
    // <Snippet3>
    StringBuilder sb2 = new StringBuilder();
    String pathstring1 = Context.Request.CurrentExecutionFilePath.ToString();
    sb2.Append("Current Executing File Path = " + pathstring1.ToString() + "<br />");
    sb2.Append("Is Absolute = " + VirtualPathUtility.IsAbsolute(pathstring1).ToString() + "<br />");
    sb2.Append("Is AppRelative = " + VirtualPathUtility.IsAppRelative(pathstring1).ToString() + "<br />");
    sb2.Append("Make AppRelative = " + VirtualPathUtility.ToAppRelative(pathstring1).ToString() + "<br />");
    Response.Write(sb2.ToString());
    // </Snippet3>
}
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>VirtualPathUtility Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
    </div>
    </form>
</body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">

  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
    
    ' <Snippet2>
    Dim sb As New StringBuilder()
    Dim pathstring As String = Context.Request.FilePath.ToString()
    sb.Append("Current file path = " & pathstring & "<br />")
    sb.Append("File name = " & VirtualPathUtility.GetFileName(pathstring).ToString() & "<br />")
    sb.Append("File extension = " & VirtualPathUtility.GetExtension(pathstring).ToString() & "<br />")
    sb.Append("Directory = " & VirtualPathUtility.GetDirectory(pathstring).ToString() & "<br />")
    Response.Write(sb.ToString())
    ' </Snippet2>
    
    ' <Snippet3>
    Dim sb2 As New StringBuilder()
    Dim pathstring1 As String = Context.Request.CurrentExecutionFilePath.ToString()
    sb2.Append("Current Executing File Path = " & pathstring1.ToString() & "<br />")
    sb2.Append("Is Absolute = " & VirtualPathUtility.IsAbsolute(pathstring1).ToString() & "<br />")
    sb2.Append("Is AppRelative = " & VirtualPathUtility.IsAppRelative(pathstring1).ToString() & "<br />")
    sb2.Append("Make AppRelative = " & VirtualPathUtility.ToAppRelative(pathstring1).ToString() & "<br />")
    Response.Write(sb2.ToString())
    ' </Snippet3>

  End Sub
  
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>VirtualPathUtility Example</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    </div>
    </form>
</body>
</html>

Comentários

A VirtualPathUtility classe fornece métodos utilitários para operações comuns envolvendo caminhos virtuais. Para ASP.NET controles de servidor e código do servidor, caminhos virtuais usando o operador raiz do aplicativo Web, o bloco (~), geralmente são usados em vez de caminhos relativos e absolutos. Para obter mais informações, consulte ASP.NET Caminhos do Projeto Web.

Use a VirtualPathUtility classe quando precisar converter caminhos relativos ao aplicativo em caminhos virtuais absolutos, como pode ser o caso no desenvolvimento de um manipulador de serviço Web personalizado.

Um caminho virtual absoluto começa com a marca de barra literal (/). Um caminho virtual relativo é relativo ao diretório raiz do aplicativo, se for apenas um bloco (~) ou começar com o bloco e uma barra invertida dupla (~\\) ou o bloco e uma marca de barra (~/). Fazer um caminho virtual relativo torna o caminho independente do aplicativo.

O diretório virtual do aplicativo pode ser obtido das propriedades e do AppDomainAppVirtualPath aplicativo ApplicationPath .

Observação

A VirtualPathUtility classe não se destina a fins de segurança ou canonização. Para obter mais informações sobre a segurança do aplicativo Web, consulte Visão geral das ameaças à segurança do aplicativo Web. Para obter a funcionalidade de processamento de URL genérica, consulte Uri.

Métodos

Nome Description
AppendTrailingSlash(String)

Acrescenta a marca de barra literal (/) ao final do caminho virtual, se ainda não existir.

Combine(String, String)

Combina um caminho base e um caminho relativo.

GetDirectory(String)

Retorna a parte do diretório de um caminho virtual.

GetExtension(String)

Recupera a extensão do arquivo referenciado no caminho virtual.

GetFileName(String)

Recupera o nome do arquivo referenciado no caminho virtual.

IsAbsolute(String)

Retorna um valor booliano que indica se o caminho virtual especificado é absoluto; ou seja, começa com uma marca de barra literal (/).

IsAppRelative(String)

Retorna um valor booliano que indica se o caminho virtual especificado é relativo ao aplicativo.

MakeRelative(String, String)

Retorna o caminho virtual relativo de um caminho virtual que contém o operador raiz (o bloco [~]) para outro.

RemoveTrailingSlash(String)

Remove uma marca de barra à direita (/) de um caminho virtual.

ToAbsolute(String, String)

Converte um caminho virtual em um caminho absoluto do aplicativo usando o caminho do aplicativo especificado.

ToAbsolute(String)

Converte um caminho virtual em um caminho absoluto do aplicativo.

ToAppRelative(String, String)

Converte um caminho virtual em um caminho relativo ao aplicativo usando um caminho de aplicativo especificado.

ToAppRelative(String)

Converte um caminho virtual em um caminho relativo ao aplicativo usando o caminho virtual do aplicativo que está na AppDomainAppVirtualPath propriedade.

Aplica-se a

Confira também