HttpRequestCachePolicy 建構函式
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
初始化 HttpRequestCachePolicy 類別的新執行個體。
多載
| 名稱 | Description |
|---|---|
| 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 類別的新執行個體。
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;
}
備註
適用於
HttpRequestCachePolicy(DateTime)
使用指定的快取同步日期初始化該類別的新實例 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)
參數
範例
以下程式碼範例示範如何根據快取同步日期建立快取政策。
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 類別的新實例。
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)
參數
- level
- HttpRequestCacheLevel
一個 HttpRequestCacheLevel 價值。
範例
以下程式碼範例示範建立快取政策,允許快取中找到的資源被使用。
public static HttpRequestCachePolicy CreateCacheIfAvailablePolicy()
{
HttpRequestCachePolicy policy =
new HttpRequestCachePolicy(HttpRequestCacheLevel.CacheIfAvailable);
Console.WriteLine(policy.ToString());
return policy;
}
備註
此建構子將屬性初始 Level 化為 level。
該 HttpRequestCacheLevel 值控制是否啟用快取,以及快取何時可以使用。 欲了解更多資訊,請參閱 HttpRequestCacheLevel 相關文件。
適用於
HttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan)
使用指定的年齡控制與時間值初始化該類別的新實例 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。
例外狀況
參數指定的 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 值。
適用於
HttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan, TimeSpan)
使用指定的最大年齡、年齡控制值及時間值初始化該類別的新實例 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 價值。
例外狀況
為 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 設定。
請注意,除非你指定 MaxAgeAndMaxStale 或 MaxAgeAndMinFresh,否則該 MaxAge 性質並非設定。
適用於
HttpRequestCachePolicy(HttpCacheAgeControl, TimeSpan, TimeSpan, DateTime)
使用指定的最大年齡、年齡控制值、時間值及快取同步日期初始化該類別的新實例 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 價值。
範例
以下程式碼範例示範如何根據最低新鮮度、最大存續時間及快取同步日期建立快取政策。
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 設定。
請注意,除非你指定 MaxAgeAndMaxStale 或 MaxAgeAndMinFresh,否則該 MaxAge 性質並非設定。
此構造子將 CacheSyncDate 屬性初始化為 cacheSyncDate,並將屬性初始 Level 化為 Default。