Поделиться через


HttpRequestCachePolicy Конструкторы

Определение

Инициализирует новый экземпляр класса HttpRequestCachePolicy.

Перегрузки

HttpRequestCachePolicy()

Инициализирует новый экземпляр класса HttpRequestCachePolicy.

HttpRequestCachePolicy(DateTime)

Инициализирует новый экземпляр класса HttpRequestCachePolicy, используя указанную дату синхронизации кэша.

HttpRequestCachePolicy(HttpRequestCacheLevel)

Инициализирует новый экземпляр класса HttpRequestCachePolicy, используя указанную политику кэша.

HttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan)

Инициализирует новый экземпляр класса HttpRequestCachePolicy, используя указанные значения времени и контроля времени существования.

HttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan, TimeSpan)

Инициализирует новый экземпляр класса HttpRequestCachePolicy, используя указанное максимальное время существования, значение контроля времени существования и значение времени.

HttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan, TimeSpan, DateTime)

Инициализирует новый экземпляр класса HttpRequestCachePolicy, используя указанное максимальное время существования, значение контроля времени существования, значение времени и дату синхронизации кэша.

HttpRequestCachePolicy()

Исходный код:
HttpRequestCachePolicy.cs
Исходный код:
HttpRequestCachePolicy.cs
Исходный код:
HttpRequestCachePolicy.cs

Инициализирует новый экземпляр класса HttpRequestCachePolicy.

public:
 HttpRequestCachePolicy();
public HttpRequestCachePolicy ();
Public Sub New ()

Примеры

В следующем примере кода демонстрируется настройка политики кэша с помощью этого конструктора.

static WebResponse^ GetResponseUsingCacheDefault( Uri^ uri )
{
   // Set  the default cache policy level for the "http:" scheme.
   RequestCachePolicy^ policy = gcnew RequestCachePolicy;

   // Create the request.
   WebRequest^ request = WebRequest::Create( uri );
   request->CachePolicy = policy;
   WebResponse^ response = request->GetResponse();
   Console::WriteLine( L"Policy level is {0}.", policy->Level );
   Console::WriteLine( L"Is the response from the cache? {0}", response->IsFromCache );
   return response;
}
public static WebResponse GetResponseUsingCacheDefault(Uri uri)
{
    // Set  the default cache policy level for the "http:" scheme.
    RequestCachePolicy policy = new RequestCachePolicy();
    // Create the request.
    WebRequest request = WebRequest.Create(uri);
    request.CachePolicy = policy;
    WebResponse response = request.GetResponse();
    Console.WriteLine("Policy level is {0}.", policy.Level.ToString());
    Console.WriteLine("Is the response from the cache? {0}", response.IsFromCache);

    return response;
}

Комментарии

Этот конструктор инициализирует свойство Level со значением Default.

Применяется к

HttpRequestCachePolicy(DateTime)

Исходный код:
HttpRequestCachePolicy.cs
Исходный код:
HttpRequestCachePolicy.cs
Исходный код:
HttpRequestCachePolicy.cs

Инициализирует новый экземпляр класса HttpRequestCachePolicy, используя указанную дату синхронизации кэша.

public:
 HttpRequestCachePolicy(DateTime cacheSyncDate);
public HttpRequestCachePolicy (DateTime cacheSyncDate);
new System.Net.Cache.HttpRequestCachePolicy : DateTime -> System.Net.Cache.HttpRequestCachePolicy
Public Sub New (cacheSyncDate As DateTime)

Параметры

cacheSyncDate
DateTime

Объект DateTime, указывающий время сверки ресурсов, которые хранятся в кэше.

Примеры

В следующем примере кода показано создание политики кэша на основе даты синхронизации кэша.

static HttpRequestCachePolicy^ CreateLastSyncPolicy( DateTime when )
{
   HttpRequestCachePolicy^ policy = gcnew HttpRequestCachePolicy( when );
   Console::WriteLine( L"When: {0}", when );
   Console::WriteLine( policy->CacheSyncDate );
   return policy;
}
public static HttpRequestCachePolicy CreateLastSyncPolicy(DateTime when)
{
    HttpRequestCachePolicy policy =
       new HttpRequestCachePolicy(when);

    Console.WriteLine("When: {0}", when);
    Console.WriteLine(policy.CacheSyncDate.ToString());
    return policy;
}

Комментарии

С помощью даты синхронизации кэша можно указать абсолютную дату, когда кэшированное содержимое должно быть проверено повторно. Если запись кэша была последней повторной проверки до даты синхронизации кэша, происходит повторная проверка с сервером. Если запись кэша была повторно выполнена после даты синхронизации кэша и нет требований повторной проверки сервера, которые делают кэшированную запись недопустимой, используется запись из кэша. Если дата синхронизации кэша — это будущая дата, запись повторно проверяется каждый раз, когда она запрашивается, пока эта дата не пройдет.

Этот конструктор инициализирует свойство Level со значением Default. Свойство CacheSyncDate инициализировано значением параметра cacheSyncDate.

Применяется к

HttpRequestCachePolicy(HttpRequestCacheLevel)

Исходный код:
HttpRequestCachePolicy.cs
Исходный код:
HttpRequestCachePolicy.cs
Исходный код:
HttpRequestCachePolicy.cs

Инициализирует новый экземпляр класса HttpRequestCachePolicy, используя указанную политику кэша.

public:
 HttpRequestCachePolicy(System::Net::Cache::HttpRequestCacheLevel level);
public HttpRequestCachePolicy (System.Net.Cache.HttpRequestCacheLevel level);
new System.Net.Cache.HttpRequestCachePolicy : System.Net.Cache.HttpRequestCacheLevel -> System.Net.Cache.HttpRequestCachePolicy
Public Sub New (level As HttpRequestCacheLevel)

Параметры

Примеры

В следующем примере кода показано создание политики кэша, которая позволяет использовать ресурсы, найденные в кэше, из кэша.

static HttpRequestCachePolicy^ CreateCacheIfAvailablePolicy()
{
   HttpRequestCachePolicy^ policy = gcnew HttpRequestCachePolicy( HttpRequestCacheLevel::CacheIfAvailable );
   Console::WriteLine( policy );
   return policy;
}
public static HttpRequestCachePolicy CreateCacheIfAvailablePolicy()
{
    HttpRequestCachePolicy policy =
        new HttpRequestCachePolicy(HttpRequestCacheLevel.CacheIfAvailable);

    Console.WriteLine(policy.ToString());
    return policy;
}

Комментарии

Этот конструктор инициализирует свойство Level со значением level.

Значение HttpRequestCacheLevel определяет, включено ли кэширование и когда можно использовать кэш. Дополнительные сведения см. в документации HttpRequestCacheLevel .

Применяется к

HttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan)

Исходный код:
HttpRequestCachePolicy.cs
Исходный код:
HttpRequestCachePolicy.cs
Исходный код:
HttpRequestCachePolicy.cs

Инициализирует новый экземпляр класса HttpRequestCachePolicy, используя указанные значения времени и контроля времени существования.

public:
 HttpRequestCachePolicy(System::Net::Cache::HttpCacheAgeControl cacheAgeControl, TimeSpan ageOrFreshOrStale);
public HttpRequestCachePolicy (System.Net.Cache.HttpCacheAgeControl cacheAgeControl, TimeSpan ageOrFreshOrStale);
new System.Net.Cache.HttpRequestCachePolicy : System.Net.Cache.HttpCacheAgeControl * TimeSpan -> System.Net.Cache.HttpRequestCachePolicy
Public Sub New (cacheAgeControl As HttpCacheAgeControl, ageOrFreshOrStale As TimeSpan)

Параметры

cacheAgeControl
HttpCacheAgeControl

Одно из следующих значений перечисления HttpCacheAgeControl: MaxAge, MaxStale или MinFresh.

ageOrFreshOrStale
TimeSpan

Значение TimeSpan, которое указывает количество времени.

Исключения

Значение, присвоенное параметру cacheAgeControl, нельзя использовать с этим конструктором.

Примеры

В следующем примере кода показано создание политики кэша на основе минимальной актуальности.

static HttpRequestCachePolicy^ CreateMinFreshPolicy( TimeSpan span )
{
   HttpRequestCachePolicy^ policy = gcnew HttpRequestCachePolicy( HttpCacheAgeControl::MinFresh,span );
   Console::WriteLine( L"Minimum freshness {0}", policy->MinFresh );
   return policy;
}
public static HttpRequestCachePolicy CreateMinFreshPolicy(TimeSpan span)
{
    HttpRequestCachePolicy policy =
        new HttpRequestCachePolicy(HttpCacheAgeControl.MinFresh, span);
    Console.WriteLine("Minimum freshness {0}", policy.MinFresh.ToString());
    return policy;
}

Комментарии

Значение cacheAgeControl определяет значение ageOrFreshOrStale параметра и используется для задания связанного свойства. Например, при указании MaxStaleсвойству MaxStale присваивается значение ageOrFreshOrStale параметра .

Этот конструктор инициализирует свойство Level со значением Default.

Применяется к

HttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan, TimeSpan)

Исходный код:
HttpRequestCachePolicy.cs
Исходный код:
HttpRequestCachePolicy.cs
Исходный код:
HttpRequestCachePolicy.cs

Инициализирует новый экземпляр класса HttpRequestCachePolicy, используя указанное максимальное время существования, значение контроля времени существования и значение времени.

public:
 HttpRequestCachePolicy(System::Net::Cache::HttpCacheAgeControl cacheAgeControl, TimeSpan maxAge, TimeSpan freshOrStale);
public HttpRequestCachePolicy (System.Net.Cache.HttpCacheAgeControl cacheAgeControl, TimeSpan maxAge, TimeSpan freshOrStale);
new System.Net.Cache.HttpRequestCachePolicy : System.Net.Cache.HttpCacheAgeControl * TimeSpan * TimeSpan -> System.Net.Cache.HttpRequestCachePolicy
Public Sub New (cacheAgeControl As HttpCacheAgeControl, maxAge As TimeSpan, freshOrStale As TimeSpan)

Параметры

cacheAgeControl
HttpCacheAgeControl

Значение HttpCacheAgeControl.

maxAge
TimeSpan

Значение TimeSpan, указывающее максимальное время существования ресурсов.

freshOrStale
TimeSpan

Значение TimeSpan, которое указывает количество времени.

Исключения

Значение, заданное для параметра cacheAgeControl, недопустимо.

Примеры

В следующем примере кода показано создание политики кэша на основе минимальной актуальности и максимального возраста.

static HttpRequestCachePolicy^ CreateFreshAndAgePolicy( TimeSpan freshMinimum, TimeSpan ageMaximum )
{
   HttpRequestCachePolicy^ policy = gcnew HttpRequestCachePolicy( HttpCacheAgeControl::MaxAgeAndMinFresh,
       ageMaximum, freshMinimum );
   Console::WriteLine( policy );
   return policy;
}
public static HttpRequestCachePolicy CreateFreshAndAgePolicy(TimeSpan freshMinimum, TimeSpan ageMaximum)
{
    HttpRequestCachePolicy policy =
        new HttpRequestCachePolicy(HttpCacheAgeControl.MaxAgeAndMinFresh, ageMaximum, freshMinimum);
    Console.WriteLine(policy.ToString());
    return policy;
}

Комментарии

Значение cacheAgeControl используется для интерпретации freshOrStale значения параметра и задания связанного свойства. Например, при указании MaxStaleсвойству MaxStale присваивается значение freshOrStale параметра . При указании MaxAgeAndMaxStaleMaxAge свойство задается с помощью значения maxAge параметра , а MaxStale свойство — с помощью значения freshOrStale параметра .

Обратите внимание, что если не указано MaxAgeAndMaxStale значение или MaxAgeAndMinFresh, MaxAge свойство не задано.

Этот конструктор инициализирует свойство Level со значением Default.

Применяется к

HttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan, TimeSpan, DateTime)

Исходный код:
HttpRequestCachePolicy.cs
Исходный код:
HttpRequestCachePolicy.cs
Исходный код:
HttpRequestCachePolicy.cs

Инициализирует новый экземпляр класса HttpRequestCachePolicy, используя указанное максимальное время существования, значение контроля времени существования, значение времени и дату синхронизации кэша.

public:
 HttpRequestCachePolicy(System::Net::Cache::HttpCacheAgeControl cacheAgeControl, TimeSpan maxAge, TimeSpan freshOrStale, DateTime cacheSyncDate);
public HttpRequestCachePolicy (System.Net.Cache.HttpCacheAgeControl cacheAgeControl, TimeSpan maxAge, TimeSpan freshOrStale, DateTime cacheSyncDate);
new System.Net.Cache.HttpRequestCachePolicy : System.Net.Cache.HttpCacheAgeControl * TimeSpan * TimeSpan * DateTime -> System.Net.Cache.HttpRequestCachePolicy
Public Sub New (cacheAgeControl As HttpCacheAgeControl, maxAge As TimeSpan, freshOrStale As TimeSpan, cacheSyncDate As DateTime)

Параметры

cacheAgeControl
HttpCacheAgeControl

Значение HttpCacheAgeControl.

maxAge
TimeSpan

Значение TimeSpan, указывающее максимальное время существования ресурсов.

freshOrStale
TimeSpan

Значение TimeSpan, которое указывает количество времени.

cacheSyncDate
DateTime

Объект DateTime, указывающий время сверки ресурсов, которые хранятся в кэше.

Примеры

В следующем примере кода показано создание политики кэша на основе минимальной актуальности, максимального возраста и даты синхронизации кэша.

static HttpRequestCachePolicy^ CreateFreshAndAgePolicy2( TimeSpan freshMinimum, TimeSpan ageMaximum, DateTime when )
{
   HttpRequestCachePolicy^ policy = 
       gcnew HttpRequestCachePolicy( HttpCacheAgeControl::MaxAgeAndMinFresh, 
       ageMaximum, freshMinimum, when );
   Console::WriteLine( policy );
   return policy;
   
   // For the following invocation: CreateFreshAndAgePolicy(new TimeSpan(5,0,0), new TimeSpan(10,0,0),         );
   // the output is:
   // Level:Automatic AgeControl:MinFreshAndMaxAge MinFresh:18000 MaxAge:36000
}
public static HttpRequestCachePolicy CreateFreshAndAgePolicy2(TimeSpan freshMinimum, TimeSpan ageMaximum, DateTime when)
{
    HttpRequestCachePolicy policy =
        new HttpRequestCachePolicy(HttpCacheAgeControl.MaxAgeAndMinFresh, ageMaximum, freshMinimum, when);
    Console.WriteLine(policy.ToString());
    return policy;
    // For the following invocation:
    // CreateFreshAndAgePolicy(new TimeSpan(5,0,0), new TimeSpan(10,0,0),);
    // the output is:
    // Level:Automatic
    // AgeControl:MinFreshAndMaxAge
    // MinFresh:18000
    // MaxAge:36000
}

Комментарии

Значение cacheAgeControl используется для интерпретации freshOrStale значения параметра и задания связанного свойства. Например, при указании MaxStaleсвойству MaxStale присваивается значение freshOrStale параметра . При указании MaxAgeAndMaxStaleMaxAge свойство задается с помощью значения maxAge параметра , а MaxStale свойство — с помощью значения freshOrStale параметра .

Обратите внимание, что если не указано MaxAgeAndMaxStale значение или MaxAgeAndMinFresh, MaxAge свойство не задано.

Этот конструктор инициализирует CacheSyncDate свойство значением cacheSyncDate, а свойство — значением LevelDefault.

Применяется к