Sdílet prostřednictvím


VirtualPathUtility Třída

Definice

Poskytuje pomocné metody pro běžné operace virtuální cesty.

public ref class VirtualPathUtility abstract sealed
public static class VirtualPathUtility
type VirtualPathUtility = class
Public Class VirtualPathUtility
Dědičnost
VirtualPathUtility

Příklady

Následující příklad kódu ukazuje, jak používat VirtualPathUtility třídu a některé jeho metody. Nejprve vlastnost FilePath vygeneruje virtuální cestu k webové stránce. Funkce GetFileName, GetExtensiona GetDirectory metody vrací informace o virtuální cestě. CurrentExecutionFilePath Dále vlastnost vygeneruje virtuální cestu aktuálního požadavku, která se může lišit od FilePath vlastnosti, pokud Redirect byla volána metoda. Funkce IsAbsolute, IsAppRelativea ToAppRelative metody vrací informace o virtuální cestě.

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

Poznámky

Třída VirtualPathUtility poskytuje pomocné metody pro běžné operace zahrnující virtuální cesty. U ASP.NET serverových ovládacích prvků a kódu serveru se virtuální cesty používající kořenový operátor webové aplikace běžně používají místo relativních a absolutních cest. Další informace naleznete v tématu ASP.NET cesty k webovému projektu.

VirtualPathUtility Třídu použijte v případě, že potřebujete převést cesty relativní vzhledem k aplikaci na absolutní virtuální cesty, stejně jako v případě vývoje vlastní obslužné rutiny webové služby.

Absolutní virtuální cesta začíná značkou lomítka literálu (/). Relativní virtuální cesta je relativní vzhledem ke kořenovému adresáři aplikace, pokud se jedná pouze o vlnovku (~) nebo začíná vlnovkou a dvojitým zpětným lomítkem (~\\) nebo vlnovkou a lomítkem (~/). Když nastavíte relativní virtuální cestu, bude cesta nezávislá na aplikaci.

Virtuální adresář aplikace lze získat z AppDomainAppVirtualPath vlastností a ApplicationPath vlastnosti.

Poznámka:

Třída VirtualPathUtility není určena pro účely zabezpečení nebo kanonizace. Další informace o zabezpečení webových aplikací naleznete v tématu Přehled hrozeb zabezpečení webových aplikací. Obecné funkce zpracování adres URL najdete v tématu Uri.

Metody

Name Description
AppendTrailingSlash(String)

Připojí znak lomítka literálu (/) na konec virtuální cesty, pokud ještě neexistuje.

Combine(String, String)

Kombinuje základní cestu a relativní cestu.

GetDirectory(String)

Vrátí část adresáře virtuální cesty.

GetExtension(String)

Načte příponu souboru, na který odkazuje virtuální cesta.

GetFileName(String)

Načte název souboru, na který odkazuje virtuální cesta.

IsAbsolute(String)

Vrátí logickou hodnotu určující, zda je zadaná virtuální cesta absolutní; to znamená, že začíná znakem lomítka literálu (/).

IsAppRelative(String)

Vrátí logickou hodnotu označující, jestli je zadaná virtuální cesta relativní k aplikaci.

MakeRelative(String, String)

Vrátí relativní virtuální cestu z jedné virtuální cesty obsahující kořenový operátor (tilda [~]) do jiné.

RemoveTrailingSlash(String)

Odebere koncové lomítko (/) z virtuální cesty.

ToAbsolute(String, String)

Převede virtuální cestu na absolutní cestu aplikace pomocí zadané cesty aplikace.

ToAbsolute(String)

Převede virtuální cestu na absolutní cestu aplikace.

ToAppRelative(String, String)

Převede virtuální cestu na relativní cestu aplikace pomocí zadané cesty aplikace.

ToAppRelative(String)

Převede virtuální cestu na relativní cestu aplikace pomocí virtuální cesty aplikace, která je ve AppDomainAppVirtualPath vlastnosti.

Platí pro

Viz také