Creates a cache dependency based on the specified virtual paths.
Namespace:
System.Web.Hosting
Assembly:
System.Web (in System.Web.dll)
Visual Basic (Declaration)
Public Overridable Function GetCacheDependency ( _
virtualPath As String, _
virtualPathDependencies As IEnumerable, _
utcStart As DateTime _
) As CacheDependency
Dim instance As VirtualPathProvider
Dim virtualPath As String
Dim virtualPathDependencies As IEnumerable
Dim utcStart As DateTime
Dim returnValue As CacheDependency
returnValue = instance.GetCacheDependency(virtualPath, _
virtualPathDependencies, utcStart)
public virtual CacheDependency GetCacheDependency(
string virtualPath,
IEnumerable virtualPathDependencies,
DateTime utcStart
)
public:
virtual CacheDependency^ GetCacheDependency(
String^ virtualPath,
IEnumerable^ virtualPathDependencies,
DateTime utcStart
)
public function GetCacheDependency(
virtualPath : String,
virtualPathDependencies : IEnumerable,
utcStart : DateTime
) : CacheDependency
The default implementation of the GetCacheDependency method returns nullNothingnullptra null reference (Nothing in Visual Basic). To cache virtual resources for later use you must override either the GetCacheDependency method or the GetFileHash method.
The following code example implements the GetCacheDependency method for a custom VirtualPathProvider class. For the full code required to run the example, see the Example section of the VirtualPathProvider class overview topic.
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
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);
}
Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
.NET Framework
Supported in: 3.5, 3.0, 2.0
Reference