VirtualPathUtility Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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. |