通过


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()

Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs

初始化 HttpRequestCachePolicy 类的新实例。

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

示例

下面的代码示例演示如何使用此构造函数设置缓存策略。

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)

Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
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 对象,指定必须重新验证缓存中存储的资源的时间。

示例

下面的代码示例演示如何基于缓存同步日期创建缓存策略。

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)

Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
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)

参数

示例

下面的代码示例演示如何创建一个缓存策略,该策略允许缓存中找到的资源从缓存中使用。

public static HttpRequestCachePolicy CreateCacheIfAvailablePolicy()
{
    HttpRequestCachePolicy policy =
        new HttpRequestCachePolicy(HttpRequestCacheLevel.CacheIfAvailable);

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

注解

此构造函数将 Level 属性初始化为 level.

该值 HttpRequestCacheLevel 控制是否启用缓存,以及何时可以使用缓存。 有关详细信息,请参阅 HttpRequestCacheLevel 文档。

适用于

HttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan)

Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
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 枚举值之一: MaxAgeMaxStaleMinFresh

ageOrFreshOrStale
TimeSpan

一个 TimeSpan 指定时间量的值。

例外

cacheAgeControl 参数指定的值不能用于此构造函数。

示例

下面的代码示例演示如何基于最小新鲜度创建缓存策略。

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)

Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
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 参数指定的值无效。

示例

下面的代码示例演示如何基于最小新鲜度和最长期限创建缓存策略。

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 。 指定 MaxAgeAndMaxStale时,将使用 MaxAge 参数的值 maxAge 设置属性, MaxStale 并使用参数的值 freshOrStale 设置该属性。

请注意,除非指定MaxAgeAndMaxStaleMaxAgeAndMinFreshMaxAge未设置属性。

此构造函数将 Level 属性初始化为 Default.

适用于

HttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan, TimeSpan, DateTime)

Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
HttpRequestCachePolicy.cs
Source:
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 对象,指定必须重新验证缓存中存储的资源的时间。

示例

下面的代码示例演示如何基于最小新鲜度、最长期限和缓存同步日期创建缓存策略。

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 。 指定 MaxAgeAndMaxStale时,将使用 MaxAge 参数的值 maxAge 设置属性, MaxStale 并使用参数的值 freshOrStale 设置该属性。

请注意,除非指定MaxAgeAndMaxStaleMaxAgeAndMinFreshMaxAge未设置属性。

此构造函数将属性 CacheSyncDate 初始化为 cacheSyncDate,并将属性初始化 LevelDefault

适用于