Condividi tramite


VirtualPathUtility Classe

Definizione

Fornisce metodi di utilità per le operazioni comuni relative ai percorsi virtuali.

public ref class VirtualPathUtility abstract sealed
public static class VirtualPathUtility
type VirtualPathUtility = class
Public Class VirtualPathUtility
Ereditarietà
VirtualPathUtility

Esempio

Nell'esempio di codice seguente viene illustrato come usare la VirtualPathUtility classe e alcuni dei relativi metodi. Prima di tutto, la FilePath proprietà genera il percorso virtuale della pagina Web. I GetFileNamemetodi , GetExtensione GetDirectory restituiscono informazioni sul percorso virtuale. Successivamente, la CurrentExecutionFilePath proprietà genera un percorso virtuale della richiesta corrente, che potrebbe essere diverso dalla FilePath proprietà, se è stato chiamato un Redirect metodo. I IsAbsolutemetodi , IsAppRelativee ToAppRelative restituiscono informazioni sul percorso virtuale.

<%@ 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>

Commenti

La VirtualPathUtility classe fornisce metodi di utilità per operazioni comuni che coinvolgono percorsi virtuali. Per ASP.NET controlli server e codice server, i percorsi virtuali che usano l'operatore radice dell'applicazione Web, la tilde (~), comunemente vengono usati anziché percorsi relativi e assoluti. Per altre informazioni, vedere ASP.NET Percorsi del progetto Web.

Usare la VirtualPathUtility classe quando è necessario convertire i percorsi relativi dell'applicazione in percorsi virtuali assoluti, come potrebbe essere il caso nello sviluppo di un gestore del servizio Web personalizzato.

Un percorso virtuale assoluto inizia con il segno di barra letterale (/). Un percorso virtuale relativo è relativo alla directory radice dell'applicazione, se è solo una tilde (~) o inizia con la tilde e una barra rovesciata doppia (~\\) o la tilde e un segno di barra (~/). Rendere un percorso virtuale relativo rende il percorso indipendente dall'applicazione.

La directory virtuale per l'applicazione può essere ottenuta dalle AppDomainAppVirtualPath proprietà e ApplicationPath .

Nota

La VirtualPathUtility classe non è destinata a scopi di sicurezza o canonica. Per altre informazioni sulla sicurezza delle applicazioni Web, vedere Panoramica delle minacce alla sicurezza delle applicazioni Web. Per la funzionalità di elaborazione degli URL generici, vedere Uri.

Metodi

AppendTrailingSlash(String)

Accoda la barra (/) alla fine del percorso virtuale, se non esiste già.

Combine(String, String)

Combina un percorso base e uno relativo.

GetDirectory(String)

Restituisce la parte di directory di un percorso virtuale.

GetExtension(String)

Recupera l'estensione del file cui viene fatto riferimento nel percorso virtuale.

GetFileName(String)

Recupera il nome del file cui viene fatto riferimento nel percorso virtuale.

IsAbsolute(String)

Restituisce un valore booleano indicante se il percorso virtuale specificato è assoluto, ovvero inizia con una barra (/).

IsAppRelative(String)

Restituisce un valore booleano indicante se il percorso virtuale specificato è relativo all'applicazione.

MakeRelative(String, String)

Restituisce il percorso virtuale relativo da un percorso virtuale contenente il carattere tilde (~) che rappresenta la directory radice a un altro.

RemoveTrailingSlash(String)

Rimuove la barra (/) finale da un percorso virtuale.

ToAbsolute(String)

Converte un percorso virtuale in un percorso assoluto dell'applicazione.

ToAbsolute(String, String)

Converte un percorso virtuale in un percorso assoluto dell'applicazione utilizzando il percorso applicazione specificato.

ToAppRelative(String)

Converte un percorso virtuale in uno percorso relativo all'applicazione utilizzando il percorso virtuale dell'applicazione presente nella proprietà AppDomainAppVirtualPath.

ToAppRelative(String, String)

Converte un percorso virtuale in un percorso relativo all'applicazione utilizzando un percorso applicazione specificato.

Si applica a

Vedi anche