Compartir a través de


VirtualPathUtility Clase

Definición

Proporciona métodos de utilidad para las operaciones comunes de ruta de acceso virtual.

public ref class VirtualPathUtility abstract sealed
public static class VirtualPathUtility
type VirtualPathUtility = class
Public Class VirtualPathUtility
Herencia
VirtualPathUtility

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar la VirtualPathUtility clase y algunos de sus métodos. En primer lugar, la FilePath propiedad genera la ruta de acceso virtual a la página web. Los GetFileNamemétodos , GetExtensiony GetDirectory devuelven información sobre la ruta de acceso virtual. A continuación, la CurrentExecutionFilePath propiedad genera una ruta de acceso virtual de la solicitud actual, que podría ser diferente de la FilePath propiedad , si se llamó a un Redirect método. Los IsAbsolutemétodos , IsAppRelativey ToAppRelative devuelven información sobre la ruta de acceso 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>

Comentarios

La VirtualPathUtility clase proporciona métodos de utilidad para operaciones comunes que implican rutas de acceso virtuales. Para ASP.NET controles de servidor y código de servidor, las rutas de acceso virtuales que usan el operador raíz de la aplicación web, la tilde (~), normalmente se usan en lugar de rutas de acceso relativas y absolutas. Para obtener más información, consulte ASP.NET Rutas de acceso de proyecto web.

Use la VirtualPathUtility clase cuando necesite convertir rutas de acceso relativas a la aplicación en rutas de acceso virtuales absolutas, como podría ser el caso en el desarrollo de un controlador de servicio web personalizado.

Una ruta de acceso virtual absoluta comienza con la marca de barra diagonal literal (/). Una ruta de acceso virtual relativa es relativa al directorio raíz de la aplicación, si es simplemente una tilde (~) o comienza con la tilde y una barra diagonal inversa doble (~\\) o la tilde y una marca de barra diagonal (~/). La creación de una ruta de acceso virtual relativa hace que la ruta de acceso sea independiente de la aplicación.

El directorio virtual de la aplicación se puede obtener de las AppDomainAppVirtualPath propiedades y ApplicationPath .

Nota

La VirtualPathUtility clase no está pensada para fines de seguridad o canónica. Para obtener más información sobre la seguridad de las aplicaciones web, consulte Información general sobre las amenazas de seguridad de aplicaciones web. Para conocer la funcionalidad de procesamiento de direcciones URL genéricas, consulte Uri.

Métodos

AppendTrailingSlash(String)

Anexa el signo de barra diagonal literal (/) al final de la ruta de acceso virtual, si no existe ya.

Combine(String, String)

Combina una ruta de acceso base y una ruta de acceso relativa.

GetDirectory(String)

Devuelve la parte correspondiente al directorio de una ruta de acceso virtual.

GetExtension(String)

Recupera la extensión del archivo al que se hace referencia en la ruta de acceso virtual.

GetFileName(String)

Recupera el nombre de archivo del archivo al que se hace referencia en la ruta de acceso virtual.

IsAbsolute(String)

Devuelve un valor booleano que indica si la ruta de acceso virtual especificada es absoluta; es decir, se inicia con un signo de barra diagonal literal (/).

IsAppRelative(String)

Devuelve un valor booleano que indica si la ruta de acceso virtual especificada es relativa a la aplicación.

MakeRelative(String, String)

Devuelve la ruta de acceso virtual relativa de una ruta de acceso virtual que contiene el operador raíz (la tilde [~]) de otra.

RemoveTrailingSlash(String)

Quita un signo de barra oblicua final (/) de una ruta de acceso virtual.

ToAbsolute(String)

Convierte una ruta de acceso virtual en una ruta de acceso absoluta de la aplicación.

ToAbsolute(String, String)

Convierte una ruta de acceso virtual en una ruta de acceso absoluta de la aplicación utilizando la ruta de acceso de la aplicación especificada.

ToAppRelative(String)

Convierte una ruta de acceso virtual en una ruta de acceso relativa a la aplicación utilizando la ruta de acceso virtual de la aplicación que está en la propiedad AppDomainAppVirtualPath.

ToAppRelative(String, String)

Convierte una ruta de acceso virtual en una ruta de acceso relativa a la aplicación utilizando la ruta de acceso de la aplicación especificada.

Se aplica a

Consulte también