VirtualPathUtility Klas

Definitie

Biedt hulpprogrammamethoden voor algemene bewerkingen voor virtuele paden.

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

Voorbeelden

In het volgende codevoorbeeld ziet u hoe u de VirtualPathUtility klasse en een aantal methoden gebruikt. Eerst genereert de FilePath eigenschap het virtuele pad naar de webpagina. De GetFileName, GetExtensionen GetDirectory methoden retourneren informatie over het virtuele pad. Vervolgens genereert de CurrentExecutionFilePath eigenschap een virtueel pad van de huidige aanvraag, die mogelijk anders is dan de FilePath eigenschap, als een Redirect methode is aangeroepen. De IsAbsolute, IsAppRelativeen ToAppRelative methoden retourneren informatie over het virtuele pad.

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

Opmerkingen

De VirtualPathUtility klasse biedt hulpprogrammamethoden voor algemene bewerkingen met betrekking tot virtuele paden. Voor ASP.NET serverbesturingselementen en servercode worden virtuele paden met behulp van de hoofdoperator van de webtoepassing, de tilde (~), vaak gebruikt in plaats van relatieve en absolute paden. Zie ASP.NET Web Project Paths voor meer informatie.

Gebruik de VirtualPathUtility klasse wanneer u toepassingsgerelateerde paden wilt converteren naar absolute virtuele paden, zoals het geval kan zijn bij het ontwikkelen van een aangepaste webservicehandler.

Een absoluut virtueel pad begint met het letterlijke slashteken (/). Een relatief virtueel pad is relatief ten opzichte van de hoofdmap van de toepassing, als het alleen een tilde (~) is of begint met de tilde en een dubbele backslash (~\\) of de tilde en een slash-markering (~/). Als u een virtueel pad relatief maakt, wordt het pad onafhankelijk van de toepassing.

De virtuele map voor de toepassing kan worden verkregen uit de AppDomainAppVirtualPath en ApplicationPath eigenschappen.

Note

De VirtualPathUtility klasse is niet bedoeld voor beveiligings- of canonieke doeleinden. Zie Overzicht van webtoepassingsbeveiligingsbedreigingen voor meer informatie over beveiliging van webtoepassingen. Zie voor algemene URL-verwerkingsfunctionaliteit Uri.

Methoden

Name Description
AppendTrailingSlash(String)

Voegt de letterlijke schuine streep (/) toe aan het einde van het virtuele pad, als deze nog niet bestaat.

Combine(String, String)

Combineert een basispad en een relatief pad.

GetDirectory(String)

Retourneert het mapgedeelte van een virtueel pad.

GetExtension(String)

Haalt de extensie op van het bestand waarnaar wordt verwezen in het virtuele pad.

GetFileName(String)

Haalt de bestandsnaam op van het bestand waarnaar wordt verwezen in het virtuele pad.

IsAbsolute(String)

Retourneert een Booleaanse waarde die aangeeft of het opgegeven virtuele pad absoluut is; Dat wil gezegd, het begint met een letterlijke slash (/).

IsAppRelative(String)

Retourneert een Booleaanse waarde die aangeeft of het opgegeven virtuele pad relatief is ten opzichte van de toepassing.

MakeRelative(String, String)

Retourneert het relatieve virtuele pad van het ene virtuele pad met de hoofdoperator (de tilde [~]) naar een andere.

RemoveTrailingSlash(String)

Hiermee verwijdert u een afsluitende slash (/) uit een virtueel pad.

ToAbsolute(String, String)

Converteert een virtueel pad naar een absoluut toepassingspad met behulp van het opgegeven toepassingspad.

ToAbsolute(String)

Converteert een virtueel pad naar een absoluut toepassingspad.

ToAppRelative(String, String)

Converteert een virtueel pad naar een toepassings-relatief pad met behulp van een opgegeven toepassingspad.

ToAppRelative(String)

Converteert een virtueel pad naar een toepassings-relatief pad met behulp van het virtuele toepassingspad dat zich in de AppDomainAppVirtualPath eigenschap bevindt.

Van toepassing op

Zie ook