HttpCacheDirectiveHeaderValueCollection 类

定义

表示与 HTTP 请求或响应关联的 HTTP 内容上的 Cache-Control HTTP 标头的值。

public ref class HttpCacheDirectiveHeaderValueCollection sealed : IIterable<HttpNameValueHeaderValue ^>, IVector<HttpNameValueHeaderValue ^>, IStringable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class HttpCacheDirectiveHeaderValueCollection final : IIterable<HttpNameValueHeaderValue>, IVector<HttpNameValueHeaderValue>, IStringable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class HttpCacheDirectiveHeaderValueCollection final : IIterable<HttpNameValueHeaderValue>, IVector<HttpNameValueHeaderValue>, IStringable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public sealed class HttpCacheDirectiveHeaderValueCollection : IEnumerable<HttpNameValueHeaderValue>, IList<HttpNameValueHeaderValue>, IStringable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class HttpCacheDirectiveHeaderValueCollection : IEnumerable<HttpNameValueHeaderValue>, IList<HttpNameValueHeaderValue>, IStringable
Public NotInheritable Class HttpCacheDirectiveHeaderValueCollection
Implements IEnumerable(Of HttpNameValueHeaderValue), IList(Of HttpNameValueHeaderValue), IStringable
继承
Object Platform::Object IInspectable HttpCacheDirectiveHeaderValueCollection
属性
实现

Windows 要求

设备系列
Windows 10 (在 10.0.10240.0 中引入)
API contract
Windows.Foundation.UniversalApiContract (在 v1.0 中引入)

示例

以下示例代码演示了一个方法,该方法使用 HttpCacheDirectiveHeaderValueCollection 类的属性和方法在 HttpRequestMessage 对象上获取和设置 Cache-Control HTTP 标头。

using System;
using Windows.Web.Http;
using Windows.Web.Http.Headers;

        public void DemonstrateHeaderRequestCacheControl() {
            var request = new HttpRequestMessage();
            bool parsedOk = false;

            // Set the header with a string.
            parsedOk = request.Headers.CacheControl.TryParseAdd("no-store");

            // Set the header with a strong type.
            request.Headers.CacheControl.Add(new HttpNameValueHeaderValue("max-age", "10"));

            // Get the strong type out
            foreach (var value in request.Headers.CacheControl) {
                System.Diagnostics.Debug.WriteLine("One of the CacheControl values: {0}={1}", value.Name, value.Value);
            }

            // The ToString() is useful for diagnostics, too.
            System.Diagnostics.Debug.WriteLine("The CacheControl ToString() results: {0}", request.Headers.CacheControl.ToString());
        }

以下示例代码演示了一个方法,该方法使用 HttpCacheDirectiveHeaderValueCollection 类的属性和方法获取和设置 HttpResponseMessage 对象上的 Cache-Control HTTP 标头。

using System;
using Windows.Web.Http;
using Windows.Web.Http.Headers;

        public void DemonstrateHeaderResponseCacheControl() {
            var response = new HttpResponseMessage();

            // Set the header with a string
            response.Headers.CacheControl.TryParseAdd("public");

            // Set the header with a strong type
            response.Headers.CacheControl.Add(new HttpNameValueHeaderValue("max-age", "30"));

            // Get the strong type out
            foreach (var value in response.Headers.CacheControl) {
                System.Diagnostics.Debug.WriteLine("CacheControl {0}={1}", value.Name, value.Value);
            }

            // The ToString() is useful for diagnostics, too.
            System.Diagnostics.Debug.WriteLine("The CacheControl ToString() results: {0}", response.Headers.CacheControl.ToString());
        }

注解

HttpCacheDirectiveHeaderValueCollection 类表示与 HTTP 请求或 HTTP 响应关联的 HTTP 内容上的 Cache-Control HTTP 标头的值。

HttpRequestHeaderCollection 上的 CacheControl 属性返回 HttpCacheDirectiveHeaderValueCollection。 HttpResponseHeaderCollection 上的 CacheControl 属性返回 HttpCacheDirectiveHeaderValueCollection。

集合成员列表

对于 JavaScript,HttpCacheDirectiveHeaderValueCollection 的成员显示在成员列表中。 此外,HttpCacheDirectiveHeaderValueCollection 支持 Array.prototype 的成员,并使用索引访问项。

枚举 C# 或 Microsoft Visual Basic 中的集合

可以在 C# 或 Microsoft Visual Basic 中循环访问 HttpCacheDirectiveHeaderValueCollection 对象。 在许多情况下,例如使用 foreach 语法,编译器会为你执行此强制转换,你无需显式强制转换为 IEnumerable<HttpNameValueHeaderValue> 。 如果需要显式强制转换(例如,如果要调用 GetEnumerator),请使用 HttpNameValueHeaderValue 约束将集合对象强制转换为 IEnumerable<T>

属性

MaxAge

获取或设置 Cache-Control HTTP 标头中 max-age 指令的值。

MaxStale

获取或设置 Cache-Control HTTP 标头中 max-stale 指令的值。

MinFresh

获取或设置 Cache-Control HTTP 标头中 min-fresh 指令的值。

SharedMaxAge

获取或设置 Cache-Control HTTP 标头中 s-maxage 指令的值。

Size

获取集合中 HttpNameValueHeaderValue 对象的数目。

方法

Append(HttpNameValueHeaderValue)

将新的 HttpNameValueHeaderValue 项添加到集合的末尾。

Clear()

从集合中删除所有对象。

First()

检索集合中第一个 HttpNameValueHeaderValue 项的迭代器。

GetAt(UInt32)

返回集合中指定索引处的 HttpNameValueHeaderValue

GetMany(UInt32, HttpNameValueHeaderValue[])

检索从集合中的指定索引处开始的 HttpNameValueHeaderValue 项。

GetView()

返回 HttpCacheDirectiveHeaderValueCollection 的不可变视图。

IndexOf(HttpNameValueHeaderValue, UInt32)

检索集合中 HttpNameValueHeaderValue 的索引。

InsertAt(UInt32, HttpNameValueHeaderValue)

HttpNameValueHeaderValue 插入到集合中的指定索引处。

ParseAdd(String)

分析 HttpCacheDirectiveHeaderValueCollection 并添加一个条目。

RemoveAt(UInt32)

HttpCacheDirectiveHeaderValueCollection 中删除指定索引处的条目。

RemoveAtEnd()

从集合中删除最后一个 HttpNameValueHeaderValue 项。

ReplaceAll(HttpNameValueHeaderValue[])

将集合中的所有 HttpNameValueHeaderValue 项替换为指定的 HttpNameValueHeaderValue 项。

SetAt(UInt32, HttpNameValueHeaderValue)

在集合中的指定索引处设置 HttpNameValueHeaderValue

ToString()

返回表示当前 HttpCacheDirectiveHeaderValueCollection 对象的字符串。

TryParseAdd(String)

尝试分析指定的项并将其添加到 HttpCacheDirectiveHeaderValueCollection

适用于

另请参阅