Freigeben über


Vorgehensweise: Anpassen einer zeitbasierten Cacherichtlinie

Beim Erstellen einer zeitbasierten Cacherichtlinie können Sie das Cacheverhalten anpassen, indem Sie Werte für das maximale Alter, die minimale Aktualität, die maximale Synchronisierung oder das Datum der Cachesynchronisierung angeben. Das HttpRequestCachePolicy Objekt stellt mehrere Konstruktoren bereit, mit denen Sie gültige Kombinationen dieser Werte angeben können.

So erstellen Sie eine zeitbasierte Cacherichtlinie, die ein Cachesynchronisierungsdatum verwendet

Erstellen Sie eine zeitbasierte Cacherichtlinie, die ein Cachesynchronisierungsdatum verwendet, indem Sie ein DateTime Objekt an den HttpRequestCachePolicy Konstruktor übergeben:

public static HttpRequestCachePolicy CreateLastSyncPolicy(DateTime when)
{
    var policy = new HttpRequestCachePolicy(when);
    Console.WriteLine("When: {0}", when);
    Console.WriteLine(policy.ToString());
    return policy;
}
Public Shared Function CreateLastSyncPolicy([when] As DateTime) As HttpRequestCachePolicy
    Dim policy As New HttpRequestCachePolicy([when])
    Console.WriteLine("When: {0}", [when])
    Console.WriteLine(policy.ToString())
    Return policy
End Function

Die Ausgabe sieht ungefähr so aus:

When: 1/14/2004 8:07:30 AM
Level:Default CacheSyncDate:1/14/2004 8:07:30 AM

So erstellen Sie eine zeitbasierte Cacherichtlinie, die auf der mindesten Aktualität basiert

Erstellen Sie eine zeitbasierte Cacherichtlinie, die auf der minimalen Aktualität basiert, indem Sie als Parameterwert angeben MinFresh und ein cacheAgeControl Objekt an den TimeSpan Konstruktor übergeben:HttpRequestCachePolicy

public static HttpRequestCachePolicy CreateMinFreshPolicy(TimeSpan span)
{
    var policy = new HttpRequestCachePolicy(HttpCacheAgeControl.MinFresh, span);
    Console.WriteLine(policy.ToString());
    return policy;
}
Public Shared Function CreateMinFreshPolicy(span As TimeSpan) As HttpRequestCachePolicy
    Dim policy As New HttpRequestCachePolicy(HttpCacheAgeControl.MinFresh, span)
    Console.WriteLine(policy.ToString())
    Return policy
End Function

Für den folgenden Aufruf:

CreateMinFreshPolicy(new TimeSpan(1,0,0));

Die Ausgabe lautet wie folgt:

Level:Default MinFresh:3600

So erstellen Sie eine zeitbasierte Cacherichtlinie, die auf mindester Aktualität und maximalem Alter basiert

Erstellen Sie eine zeitbasierte Cacherichtlinie, die auf minimaler Aktualität und maximalem Alter basiert, indem Sie als Parameterwert angeben MaxAgeAndMinFresh und zwei cacheAgeControl Objekte an den TimeSpan Konstruktor übergeben, eine, um das maximale Alter für Ressourcen anzugeben, und eine Sekunde, um die minimale Aktualität anzugeben, die für ein objekt zulässig ist, das aus dem Cache zurückgegeben wird:HttpRequestCachePolicy

public static HttpRequestCachePolicy CreateFreshAndAgePolicy(TimeSpan freshMinimum, TimeSpan ageMaximum)
{
    var policy = new HttpRequestCachePolicy(HttpCacheAgeControl.MaxAgeAndMinFresh, ageMaximum, freshMinimum);
    Console.WriteLine(policy.ToString());
    return policy;
}
Public Shared Function CreateFreshAndAgePolicy(freshMinimum As TimeSpan, ageMaximum As TimeSpan) As HttpRequestCachePolicy
    Dim policy As New HttpRequestCachePolicy(HttpCacheAgeControl.MaxAgeAndMinFresh, ageMaximum, freshMinimum)
    Console.WriteLine(policy.ToString())
    Return policy
End Function

Für den folgenden Aufruf:

CreateFreshAndAgePolicy(new TimeSpan(5,0,0), new TimeSpan(10,0,0));

Die Ausgabe lautet wie folgt:

Level:Default MaxAge:36000 MinFresh:18000

Siehe auch