VirtualPathProvider Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt eine Reihe von Methoden bereit, mit denen eine Webanwendung Ressourcen aus einem virtuellen Dateisystem abrufen kann.
public ref class VirtualPathProvider abstract : MarshalByRefObject
public abstract class VirtualPathProvider : MarshalByRefObject
type VirtualPathProvider = class
inherit MarshalByRefObject
Public MustInherit Class VirtualPathProvider
Inherits MarshalByRefObject
- Vererbung
Beispiele
Das folgende Codebeispiel ist eine VirtualPathProvider Klassenimplementierung, die ein virtuelles Dateisystem mit in einem DataSet Objekt gespeicherten Informationen erstellt. Das Codebeispiel arbeitet mit den Codebeispielen für die VirtualFile Klassen und VirtualDirectory zusammen, um virtuelle Ressourcen aus einem Datenspeicher bereitzustellen, der in ein DataSet Objekt geladen wird.
Dieses Beispiel besteht aus vier Teilen: die VirtualPathProvider Klassenimplementierung, eine XML-Datendatei, die zum Auffüllen des DataSet Objekts verwendet wird, ein AppStart
Objekt, das eine AppInitialize
Methode enthält, mit der die VirtualPathProvider Klasse beim Kompilierungssystem registriert wird, und eine ASP.NET Seite, die Links zu den virtuellen Dateien bereitstellt.
Führen Sie die folgenden Schritte aus, um diesen Beispielcode in einer Anwendung zu verwenden.
Erstellen Sie eine Beispielanwendung auf Ihrem Webserver.
Kopieren Sie den Quellcode für das benutzerdefinierte VirtualPathProvider Objekt (siehe unten) in eine Datei im Verzeichnis der Anwendung
App_Code
.Kopieren Sie den Quellcode für das benutzerdefinierte VirtualDirectory Objekt (siehe Abschnitt Beispiel im VirtualDirectory Thema Klassenübersicht) in eine Datei im Verzeichnis der Anwendung
App_Code
.Kopieren Sie den Quellcode für das benutzerdefinierte VirtualFile Objekt (siehe Abschnitt Beispiel im VirtualFile Thema Klassenübersicht) in eine Datei im Verzeichnis der Anwendung
App_Code
.Kopieren Sie den Quellcode für das
AppStart
Objekt (siehe unten) in eine Datei im Verzeichnis der AnwendungApp_Code
.Kopieren Sie die XML-Daten (siehe unten) in eine Datei namens
XMLData.xml
in eine Datei im Verzeichnis der AnwendungApp_Data
.Kopieren Sie die
default.aspx
Datei (siehe unten) in das Stammverzeichnis der Beispielanwendung. Verwenden Sie einen Webbrowser, um diedefault.aspx
Datei zu öffnen, und klicken Sie dann auf die Links auf der Seite, um den Inhalt der virtuellen Dateien anzuzeigen.
Das erste Beispiel ist eine benutzerdefinierte VirtualPathProvider Klasse. Die DirectoryExists Methoden und FileExists werden überschrieben, um anzugeben, ob ein angefordertes Verzeichnis im virtuellen Dateisystem vorhanden ist. Die GetDirectory Methoden und GetFile werden überschrieben, um benutzerdefinierte VirtualDirectory Instanzen und VirtualFile Instanzen zurückzugeben, die Informationen aus dem virtuellen Dateisystem enthalten.
Die -Klasse stellt auch eine GetVirtualData
Methode bereit, die von der VirtualDirectory - und VirtualFile -Klasse für den Zugriff auf das DataSet Objekt verwendet wird, das die Daten des virtuellen Dateisystems enthält. In einer Produktionsimplementierung wird diese Methode in der Regel in einem Geschäftsobjekt implementiert, das für die Interaktion mit dem Datenspeicher zuständig ist.
using System;
using System.Data;
using System.Security.Permissions;
using System.Web;
using System.Web.Caching;
using System.Web.Hosting;
namespace Samples.AspNet.CS
{
[AspNetHostingPermission(SecurityAction.Demand, Level = AspNetHostingPermissionLevel.Medium)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level = AspNetHostingPermissionLevel.High)]
public class SamplePathProvider : VirtualPathProvider
{
private string dataFile;
public SamplePathProvider()
: base()
{
}
protected override void Initialize()
{
// Set the datafile path relative to the application's path.
dataFile = HostingEnvironment.ApplicationPhysicalPath + "App_Data\\XMLData.xml";
}
/// <summary>
/// Data set provider for the SampleVirtualDirectory and
/// SampleVirtualFile classes. In a production application
/// this method would be on a provider class that accesses
/// the virtual resource data source.
/// </summary>
/// <returns>
/// The System.Data.DataSet containing the virtual resources
/// provided by the SamplePathProvider.
/// </returns>
public DataSet GetVirtualData()
{
// Get the data from the cache.
DataSet ds = (DataSet)HostingEnvironment.Cache.Get("VPPData");
if (ds == null)
{
// Data not in cache. Read XML file.
ds = new DataSet();
ds.ReadXml(dataFile);
// Make DataSet dependent on XML file.
CacheDependency cd = new CacheDependency(dataFile);
// Put DataSet into cache for maximum of 20 minutes.
HostingEnvironment.Cache.Add("VPPData", ds, cd,
Cache.NoAbsoluteExpiration,
new TimeSpan(0, 20, 0),
CacheItemPriority.Default, null);
// Set data timestamp.
DateTime dataTimeStamp = DateTime.Now;
// Cache it so we can get the timestamp in later calls.
HostingEnvironment.Cache.Insert("dataTimeStamp", dataTimeStamp, null,
Cache.NoAbsoluteExpiration,
new TimeSpan(0, 20, 0),
CacheItemPriority.Default, null);
}
return ds;
}
/// <summary>
/// Determines whether a specified virtual path is within
/// the virtual file system.
/// </summary>
/// <param name="virtualPath">An absolute virtual path.</param>
/// <returns>
/// true if the virtual path is within the
/// virtual file sytem; otherwise, false.
/// </returns>
private bool IsPathVirtual(string virtualPath)
{
String checkPath = VirtualPathUtility.ToAppRelative(virtualPath);
return checkPath.StartsWith("~/vrdir", StringComparison.InvariantCultureIgnoreCase);
}
public override bool FileExists(string virtualPath)
{
if (IsPathVirtual(virtualPath))
{
SampleVirtualFile file = (SampleVirtualFile)GetFile(virtualPath);
return file.Exists;
}
else
{
return Previous.FileExists(virtualPath);
}
}
public override bool DirectoryExists(string virtualDir)
{
if (IsPathVirtual(virtualDir))
{
SampleVirtualDirectory dir = (SampleVirtualDirectory)GetDirectory(virtualDir);
return dir.Exists;
}
else
{
return Previous.DirectoryExists(virtualDir);
}
}
public override VirtualFile GetFile(string virtualPath)
{
if (IsPathVirtual(virtualPath))
return new SampleVirtualFile(virtualPath, this);
else
return Previous.GetFile(virtualPath);
}
public override VirtualDirectory GetDirectory(string virtualDir)
{
if (IsPathVirtual(virtualDir))
return new SampleVirtualDirectory(virtualDir, this);
else
return Previous.GetDirectory(virtualDir);
}
public override CacheDependency GetCacheDependency(
string virtualPath,
System.Collections.IEnumerable virtualPathDependencies,
DateTime utcStart)
{
if (IsPathVirtual(virtualPath))
{
System.Collections.Specialized.StringCollection fullPathDependencies = null;
// Get the full path to all dependencies.
foreach (string virtualDependency in virtualPathDependencies)
{
if (fullPathDependencies == null)
fullPathDependencies = new System.Collections.Specialized.StringCollection();
fullPathDependencies.Add(virtualDependency);
}
if (fullPathDependencies == null)
return null;
// Copy the list of full-path dependencies into an array.
string[] fullPathDependenciesArray = new string[fullPathDependencies.Count];
fullPathDependencies.CopyTo(fullPathDependenciesArray, 0);
// Copy the virtual path into an array.
string[] virtualPathArray = new string[1];
virtualPathArray[0] = virtualPath;
return new CacheDependency(virtualPathArray, fullPathDependenciesArray, utcStart);
}
else
{
return Previous.GetCacheDependency(virtualPath, virtualPathDependencies, utcStart);
}
}
}
}
Imports System.Data
Imports System.Security.Permissions
Imports System.Web
Imports System.Web.Caching
Imports System.Web.Hosting
Namespace Samples.AspNet.VB
<AspNetHostingPermission(SecurityAction.Demand, Level:=AspNetHostingPermissionLevel.Medium), _
AspNetHostingPermission(SecurityAction.InheritanceDemand, level:=AspNetHostingPermissionLevel.High)> _
Public Class SamplePathProvider
Inherits VirtualPathProvider
Private dataFile As String
Public Sub New()
MyBase.New()
End Sub
Protected Overrides Sub Initialize()
' Set the datafile path relative to the application's path.
dataFile = HostingEnvironment.ApplicationPhysicalPath & _
"App_Data\XMLData.xml"
End Sub
' Data set provider for the SampleVirtualFile and
' SampleVirtualDirectory classes. In a production application
' this method would be on a provider class that accesses
' the virtual resource data source.
' The System.Data.DataSet containing the virtual resources
' provided by the SamplePathProvider.
Public Function GetVirtualData() As DataSet
' Get the data from the cache.
Dim ds As DataSet
ds = CType(HostingEnvironment.Cache.Get("VPPData"), DataSet)
If ds Is Nothing Then
' Data set not in cache. Read XML file.
ds = New DataSet
ds.ReadXml(dataFile)
' Make DataSet dependent on XML file.
Dim cd As CacheDependency
cd = New CacheDependency(dataFile)
' Put DataSet into cache for maximum of 20 minutes.
HostingEnvironment.Cache.Add("VPPData", ds, cd, _
Cache.NoAbsoluteExpiration, _
New TimeSpan(0, 20, 0), _
CacheItemPriority.Default, Nothing)
' Set data timestamp.
Dim dataTimeStamp As DateTime
dataTimeStamp = DateTime.Now
' Cache it so we can get the timestamp in later calls.
HostingEnvironment.Cache.Add("dataTimeStamp", dataTimeStamp, Nothing, _
Cache.NoAbsoluteExpiration, _
New TimeSpan(0, 20, 0), _
CacheItemPriority.Default, Nothing)
End If
Return ds
End Function
Private Function IsPathVirtual(ByVal virtualPath As String) As Boolean
Dim checkPath As String
checkPath = VirtualPathUtility.ToAppRelative(virtualPath)
Return checkPath.StartsWith("~/vrdir", StringComparison.InvariantCultureIgnoreCase)
End Function
Public Overrides Function FileExists(ByVal virtualPath As String) As Boolean
If (IsPathVirtual(virtualPath)) Then
Dim file As SampleVirtualFile
file = CType(GetFile(virtualPath), SampleVirtualFile)
Return file.Exists
Else
Return Previous.FileExists(virtualPath)
End If
End Function
Public Overrides Function DirectoryExists(ByVal virtualDir As String) As Boolean
If (IsPathVirtual(virtualDir)) Then
Dim dir As SampleVirtualDirectory
dir = CType(GetDirectory(virtualDir), SampleVirtualDirectory)
Return dir.exists
Else
Return Previous.DirectoryExists(virtualDir)
End If
End Function
Public Overrides Function GetFile(ByVal virtualPath As String) As VirtualFile
If (IsPathVirtual(virtualPath)) Then
Return New SampleVirtualFile(virtualPath, Me)
Else
Return Previous.GetFile(virtualPath)
End If
End Function
Public Overrides Function GetDirectory(ByVal virtualDir As String) As VirtualDirectory
If (IsPathVirtual(virtualDir)) Then
Return New SampleVirtualDirectory(virtualDir, Me)
Else
Return Previous.GetDirectory(virtualDir)
End If
End Function
Public Overrides Function GetCacheDependency(ByVal virtualPath As String, ByVal virtualPathDependencies As IEnumerable, ByVal utcStart As Date) As CacheDependency
If (IsPathVirtual(virtualPath)) Then
Dim fullPathDependencies As System.Collections.Specialized.StringCollection
fullPathDependencies = Nothing
' Get the full path to all dependencies.
For Each virtualDependency As String In virtualPathDependencies
If fullPathDependencies Is Nothing Then
fullPathDependencies = New System.Collections.Specialized.StringCollection
End If
fullPathDependencies.Add(virtualDependency)
Next
If fullPathDependencies Is Nothing Then
Return Nothing
End If
Dim fullPathDependenciesArray As String()
fullPathDependencies.CopyTo(fullPathDependenciesArray, 0)
Return New CacheDependency(fullPathDependenciesArray, utcStart)
Else
Return Previous.GetCacheDependency(virtualPath, virtualPathDependencies, utcStart)
End If
End Function
End Class
End Namespace
Das zweite Beispiel ist die XML-Datendatei, die zum Auffüllen des DataSet vom benutzerdefinierten VirtualPathProvider Objekt zurückgegebenen Objekts verwendet wird. Diese XML-Daten werden verwendet, um die Verwendung der VirtualPathProvider- , VirtualDirectory- und VirtualFile -Objekte zum Abrufen von Daten aus externen Daten zu veranschaulichen.
<?xml version="1.0" encoding="utf-8" ?>
<resource type="dir"
path="/vrDir"
parentPath=""
content="">
<resource type="file"
path="/vrDir/Level1FileA.vrf"
parentPath="/vrDir"
content="This is the content of file Level1FileA.">
</resource>
<resource type="file"
path="/vrDir/Level1FileB.vrf"
parentPath="/vrDir"
content="This is the content of file Level1FileB.">
</resource>
<resource type="dir"
path="/vrDir/Level2DirA"
parentPath="/vrDir"
content="">
<resource type="file"
path="/vrDir/Level2DirA/Level2FileA.vrf"
parentPath="/vrDir/Level2DirA"
content="This is the content of file Level2FileA.">
</resource>
<resource type="file"
path="/vrDir/Level2DirA/Level2FileB.vrf"
parentPath="/vrDir/Level2DirA"
content="This is the content of file Level2FileB.">
</resource>
</resource>
<resource type="dir"
path="/vrDir/Level2DirB"
parentPath="/vrDir"
content="">
<resource type="file"
path="/vrDir/Level2DirB/Level2FileA.vrf"
parentPath="/vrDir/Level2DirB"
content="This is the content of file Level2FileA.">
</resource>
<resource type="file"
path="/vrDir/Level2DirB/Level2FileB.vrf"
parentPath="/vrDir/Level2DirB"
content="This is the content of file Level2FileB.">
</resource>
</resource>
</resource>
Das dritte Beispiel stellt ein AppStart
-Objekt bereit, das eine AppInitialize
-Methode enthält. Diese Methode wird während der Initialisierung einer ASP.NET-Anwendung aufgerufen, um die erforderliche benutzerdefinierte Initialisierung auszuführen. In diesem Fall registriert es das benutzerdefinierte VirtualPathProvider Objekt beim ASP.NET Buildsystem.
using System.Web.Hosting;
namespace Samples.AspNet.CS
{
/// <summary>
/// Contains the application initialization method
/// for the sample application.
/// </summary>
public static class AppStart
{
public static void AppInitialize()
{
SamplePathProvider sampleProvider = new SamplePathProvider();
HostingEnvironment.RegisterVirtualPathProvider(sampleProvider);
}
}
}
Imports System.Web.Hosting
Namespace Samples.AspNet.VB
Public Class AppStart
Public Shared Sub AppInitialize()
Dim sampleProvider As SamplePathProvider = New SamplePathProvider()
HostingEnvironment.RegisterVirtualPathProvider(sampleProvider)
End Sub
End Class
End Namespace
Das letzte Beispiel ist eine ASP.NET Seite, die Links zu den virtuellen Dateien enthält, die im virtuellen Dateisystem enthalten sind.
<%@ 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">
</script>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html" />
<title>Virtual Path Provider Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:HyperLink ID="hyperLink1" runat="server" NavigateUrl="vrDir/Level1FileA.vrf" Text="Level 1, File A" /><br />
<asp:HyperLink ID="hyperLink2" runat="server" NavigateUrl="vrDir/Level1FileB.vrf" Text="Level 1, File B" /><br />
<asp:HyperLink ID="hyperLink3" runat="server" NavigateUrl="vrDir/Level2DirA/Level2FileA.vrf" Text="Level 2a, File A" /><br />
<asp:HyperLink ID="hyperLink4" runat="server" NavigateUrl="vrDir/Level2DirA/Level2FileB.vrf" Text="Level 2a, File B" /><br />
<asp:HyperLink ID="hyperLink5" runat="server" NavigateUrl="vrDir/Level2DirB/Level2FileA.vrf" Text="Level 2b, File A" /><br />
<asp:HyperLink ID="hyperLink6" runat="server" NavigateUrl="vrDir/Level2DirB/Level2FileB.vrf" Text="Level 2b, File B" /><br />
</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">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<meta http-equiv="Content-Type" content="text/html" />
<title>Virtual Path Provider Example</title>
</head>
<body>
<form id="form1" runat="server">
<asp:HyperLink ID="hyperLink1" runat="server" NavigateUrl="vrDir/Level1FileA.vrf" Text="Level 1, File A" /><br />
<asp:HyperLink ID="hyperLink2" runat="server" NavigateUrl="vrDir/Level1FileB.vrf" Text="Level 1, File B" /><br />
<asp:HyperLink ID="hyperLink3" runat="server" NavigateUrl="vrDir/Level2DirA/Level2FileA.vrf" Text="Level 2a, File A" /><br />
<asp:HyperLink ID="hyperLink4" runat="server" NavigateUrl="vrDir/Level2DirA/Level2FileB.vrf" Text="Level 2a, File B" /><br />
<asp:HyperLink ID="hyperLink5" runat="server" NavigateUrl="vrDir/Level2DirB/Level2FileA.vrf" Text="Level 2b, File A" /><br />
<asp:HyperLink ID="hyperLink6" runat="server" NavigateUrl="vrDir/Level2DirB/Level2FileB.vrf" Text="Level 2b, File B" /><br />
</form>
</body>
</html>
Hinweise
Die VirtualPathProvider -Klasse bietet eine Reihe von Methoden zum Implementieren eines virtuellen Dateisystems für eine Webanwendung. In einem virtuellen Dateisystem werden die Dateien und Verzeichnisse von einem anderen Datenspeicher als dem Dateisystem verwaltet, das vom Betriebssystem des Servers bereitgestellt wird. Sie können beispielsweise ein virtuelles Dateisystem verwenden, um Inhalte in einer SQL Server Datenbank zu speichern.
Sie können jede Datei, die bei Anforderung verarbeitet wird, in einem virtuellen Dateisystem speichern. Dies schließt Folgendes ein:
ASP.NET Seiten, Gestaltungsvorlagen, Benutzersteuerelemente und andere Objekte.
Standardwebseiten mit Erweiterungen wie .htm und .jpg.
Jede benutzerdefinierte Erweiterung, die einer BuildProvider Instanz zugeordnet ist.
Ein beliebiges benanntes Design im
App_Theme
Ordner.
Sie können ASP.NET Anwendungsordner oder Dateien, die Assemblys auf Anwendungsebene generieren, nicht in einem virtuellen Dateisystem speichern. Dies schließt Folgendes ein:
Die Datei Global.asax.
Web.config Dateien.
Siteübersichtsdatendateien, die XmlSiteMapProvidervon verwendet werden.
Verzeichnisse, die Anwendungsassemblys enthalten oder Anwendungsassemblys generieren:
Bin
,App_Code
,App_GlobalResources
, beliebigeApp_LocalResources
.Der Anwendungsdatenordner.
App_Data
Hinweis
Wenn eine Website für die Bereitstellung vorkompiliert ist, werden die von einer VirtualPathProvider Instanz bereitgestellten Inhalte nicht kompiliert, und die vorkompilierte Website verwendet keine VirtualPathProvider Instanzen.
Registrieren eines VirtualPathProvider
Eine benutzerdefinierte VirtualPathProvider Instanz sollte beim ASP.NET Kompilierungssystem mithilfe der HostingEnvironment.RegisterVirtualPathProvider -Methode registriert werden, bevor eine Seitenanalyse oder Kompilierung von der Webanwendung ausgeführt wird.
In der Regel wird eine VirtualPathProvider Instanz in einer AppInitialize
Methode registriert, die App_Code
im Verzeichnis oder während des Ereignisses Application_Start
in der Global.asax
Datei definiert ist. Ein Beispiel für die Registrierung einer VirtualPathProvider Instanz in einer AppInitialize
Methode finden Sie im Abschnitt Beispiel.
Sie können eine VirtualPathProvider Instanz während anderer Ereignisse registrieren, aber Seiten, die vor der Registrierung der VirtualPathProvider Instanz kompiliert und zwischengespeichert werden, werden nicht ungültig, auch wenn die neue VirtualPathProvider Instanz jetzt die Quelle für die zuvor kompilierte Seite bereitstellen würde.
Hinweise für Ausführende
Wenn Sie von erben VirtualPathProvider, müssen Sie die folgenden Member überschreiben:
Wenn Ihre benutzerdefinierte VirtualPathProvider Klasse Verzeichnisse im virtuellen Dateisystem unterstützt, müssen Sie die folgenden Member überschreiben.
-
Hinweis: Wenn Ihr virtuelles Dateisystem Designs für die Website enthält (durch Erstellen eines virtuellen
App_Themes
Verzeichnisses), muss Ihre benutzerdefinierte VirtualPathProvider Klasse Verzeichnisse unterstützen.Eine benutzerdefinierte VirtualPathProvider Klasse funktioniert mit Klassen, die von den VirtualFile Klassen und VirtualDirectory abgeleitet werden. Sie sollten abgeleitete Klassen von diesen Typen implementieren, um Datei- und Verzeichnisinformationen aus Ihrem virtuellen Dateisystem bereitzustellen. Ein Beispiel für eine benutzerdefinierte VirtualFile Implementierung finden Sie im Abschnitt Beispiel des VirtualFile Themas Klassenübersicht. Ein Beispiel für eine benutzerdefinierte VirtualDirectory Implementierung finden Sie im Abschnitt Beispiel des VirtualDirectory Themas Klassenübersicht.
Konstruktoren
VirtualPathProvider() |
Initialisiert die Klasse zur Verwendung durch eine geerbte Klasseninstanz. Dieser Konstruktor kann nur von einer geerbten Klasse aufgerufen werden. |
Eigenschaften
Previous |
Ruft einen Verweis auf ein vorher registriertes VirtualPathProvider-Objekt im Kompilierungssystem ab. |
Methoden
CombineVirtualPaths(String, String) |
Kombiniert einen Basispfad mit einem relativen Pfad, um einen vollständigen Pfad zu einer virtuellen Ressource zurückzugeben. |
CreateObjRef(Type) |
Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind. (Geerbt von MarshalByRefObject) |
DirectoryExists(String) |
Ruft einen Wert ab, der angibt, ob ein Verzeichnis im virtuellen Dateisystem vorhanden ist. |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
FileExists(String) |
Ruft einen Wert ab, der angibt, ob eine Datei im virtuellen Dateisystem vorhanden ist. |
GetCacheDependency(String, IEnumerable, DateTime) |
Erstellt eine auf den angegebenen virtuellen Pfaden basierende Cacheabhängigkeit. |
GetCacheKey(String) |
Gibt einen Cacheschlüssel zurück, der für den angegebenen virtuellen Pfad verwendet werden soll. |
GetDirectory(String) |
Ruft ein virtuelles Verzeichnis aus dem virtuellen Dateisystem ab. |
GetFile(String) |
Ruft aus dem virtuellen Dateisystem eine virtuelle Datei ab. |
GetFileHash(String, IEnumerable) |
Gibt einen Hash der angegebenen virtuellen Pfade zurück. |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetLifetimeService() |
Veraltet.
Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert. (Geerbt von MarshalByRefObject) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
Initialize() |
Initialisiert die VirtualPathProvider-Instanz. |
InitializeLifetimeService() |
Führt zu einer unendlichen Lebensdauer des VirtualPathProvider-Objekts, indem das Erstellen eines Lease verhindert wird. |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
MemberwiseClone(Boolean) |
Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts. (Geerbt von MarshalByRefObject) |
OpenFile(String) |
Gibt einen Stream aus einer virtuellen Datei zurück. |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |