Compartilhar via


VirtualPathUtility Classe

Definição

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

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 , GetExtensione GetDirectory 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 foi chamado. Os IsAbsolutemétodos , IsAppRelativee ToAppRelative 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 que envolvem caminhos virtuais. Para ASP.NET controles de servidor e código do servidor, os caminhos virtuais que usam o operador raiz do aplicativo Web, o til (~), normalmente 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 til (~) ou começar com o til e uma barra invertida dupla (~\\) ou o til e uma barra (~/). Tornar um caminho virtual relativo torna o caminho independente do aplicativo.

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

Observação

A VirtualPathUtility classe não se destina a fins de segurança ou canonicalizaçã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

AppendTrailingSlash(String)

Acrescenta a barra “/” literal ao final do caminho virtual se ainda não existe.

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, se ele começa com uma 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 til [~]) para outro.

RemoveTrailingSlash(String)

Remover uma barra “/” à direita de um caminho virtual.

ToAbsolute(String)

Converte um caminho virtual em um caminho absoluto do aplicativo.

ToAbsolute(String, String)

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

ToAppRelative(String)

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

ToAppRelative(String, String)

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

Aplica-se a

Confira também