Partager via


VirtualPathUtility Classe

Définition

Fournit des méthodes utilitaires pour les opérations de chemin d'accès virtuel communes.

public ref class VirtualPathUtility abstract sealed
public static class VirtualPathUtility
type VirtualPathUtility = class
Public Class VirtualPathUtility
Héritage
VirtualPathUtility

Exemples

L’exemple de code suivant montre comment utiliser la VirtualPathUtility classe et certaines de ses méthodes. Tout d’abord, la FilePath propriété génère le chemin d’accès virtuel à la page Web. Les GetFileNameméthodes , GetExtensionet GetDirectory retournent des informations sur le chemin d’accès virtuel. Ensuite, la CurrentExecutionFilePath propriété génère un chemin d’accès virtuel de la requête actuelle, qui peut être différent de la FilePath propriété, si une Redirect méthode a été appelée. Les IsAbsoluteméthodes , IsAppRelativeet ToAppRelative retournent des informations sur le chemin d’accès virtuel.

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

Remarques

La VirtualPathUtility classe fournit des méthodes utilitaires pour les opérations courantes impliquant des chemins virtuels. Pour ASP.NET contrôles serveur et le code serveur, les chemins d’accès virtuels utilisant l’opérateur racine de l’application web, le tilde (~), sont couramment utilisés au lieu des chemins relatifs et absolus. Pour plus d’informations, consultez chemins ASP.NET projet web.

Utilisez la VirtualPathUtility classe lorsque vous devez convertir des chemins d’accès relatifs à l’application en chemins virtuels absolus, comme cela peut être le cas lors du développement d’un gestionnaire de service Web personnalisé.

Un chemin d’accès virtuel absolu commence par la barre oblique littérale (/). Un chemin d’accès virtuel relatif est relatif au répertoire racine de l’application, s’il s’agit simplement d’un tilde (~) ou commence par le tilde et une barre oblique inverse double (~\\) ou le tilde et une barre oblique (~/). Le fait de rendre un chemin d’accès virtuel relatif rend le chemin d’accès indépendant de l’application.

Le répertoire virtuel de l’application peut être obtenu à partir des AppDomainAppVirtualPath propriétés et ApplicationPath .

Notes

La VirtualPathUtility classe n’est pas destinée à des fins de sécurité ou de canonisation. Pour plus d’informations sur la sécurité des applications web, consultez Vue d’ensemble des menaces de sécurité des applications web. Pour connaître les fonctionnalités de traitement d’URL génériques, consultez Uri.

Méthodes

AppendTrailingSlash(String)

Ajoute la marque de barre oblique littérale (/) à la fin du chemin d'accès virtuel, si elle n'y figure pas encore.

Combine(String, String)

Combine un chemin d'accès de base et un chemin d'accès relatif.

GetDirectory(String)

Retourne la partie répertoire d'un chemin d'accès virtuel.

GetExtension(String)

Récupère l'extension du fichier référencé dans le chemin d'accès virtuel.

GetFileName(String)

Récupère le nom du fichier référencé dans le chemin d'accès virtuel.

IsAbsolute(String)

Retourne une valeur Boolean qui indique si le chemin d'accès virtuel spécifié est absolu, c'est-à-dire s'il commence par une marque de barre oblique littérale (/).

IsAppRelative(String)

Retourne une valeur Boolean qui indique si le chemin d'accès virtuel spécifié est relatif à l'application.

MakeRelative(String, String)

Retourne le chemin d'accès virtuel relatif d'un chemin d'accès virtuel qui contient l'opérateur de racine (le tilde [~]) à un autre.

RemoveTrailingSlash(String)

Supprime une marque de barre oblique (/) de fin dans un chemin d'accès virtuel.

ToAbsolute(String)

Convertit un chemin d'accès virtuel en un chemin d'accès d'application absolu.

ToAbsolute(String, String)

Convertit un chemin d'accès virtuel en un chemin d'accès d'application absolu à l'aide du chemin d'accès d'application spécifié.

ToAppRelative(String)

Convertit un chemin d'accès virtuel en un chemin d'accès relatif à l'application à l'aide du chemin d'accès virtuel d'application qui figure dans la propriété AppDomainAppVirtualPath.

ToAppRelative(String, String)

Convertit un chemin d'accès virtuel en un chemin d'accès relatif à une application à l'aide du chemin d'accès d'application spécifié.

S’applique à

Voir aussi