Sdílet prostřednictvím


VirtualPathUtility Třída

Definice

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

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žít VirtualPathUtility třídu a některé z jejích metod. FilePath Nejprve vlastnost vygeneruje virtuální cestu k webové stránce. Metody GetFileName, GetExtensiona GetDirectory 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. Metody IsAbsolute, IsAppRelativea ToAppRelative 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. Pro ASP.NET serverové ovládací prvky a kód serveru se místo relativních a absolutních cest běžně používají virtuální cesty využívající operátor kořene webové aplikace, tilda (~). Další informace najdete v tématu ASP.NET cest webového projektu.

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

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

Virtuální adresář pro aplikaci lze získat z AppDomainAppVirtualPath vlastností a ApplicationPath .

Poznámka

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

Metody

AppendTrailingSlash(String)

Připojí literálové lomítko (/) 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ý se odkazuje ve virtuální cestě.

GetFileName(String)

Načte název souboru, na který se odkazuje ve virtuální cestě.

IsAbsolute(String)

Vrátí hodnotu typu Boolean určující, zda je zadaná virtuální cesta absolutní; to znamená, že začíná literálovým lomítkem (/).

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)

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

ToAbsolute(String, String)

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

ToAppRelative(String)

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

ToAppRelative(String, String)

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

Platí pro

Viz také