HttpCacheDirectiveHeaderValueCollection Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет значение заголовка HTTP Cache-Control для содержимого HTTP, связанного с 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
- Наследование
- Атрибуты
- Реализации
Требования к Windows
Семейство устройств |
Windows 10 (появилось в 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (появилось в v1.0)
|
Примеры
В следующем примере кода показан метод для получения и задания заголовка HTTP Cache-Control в объекте HttpRequestMessage с помощью свойств и методов класса HttpCacheDirectiveHeaderValueCollection.
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());
}
В следующем примере кода показан метод для получения и задания заголовка HTTP Cache-Control в объекте HttpResponseMessage с помощью свойств и методов класса HttpCacheDirectiveHeaderValueCollection.
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 Cache-Control для содержимого HTTP, связанного с HTTP-запросом или HTTP-ответом.
Свойство CacheControl объекта HttpRequestHeaderCollection возвращает объект HttpCacheDirectiveHeaderValueCollection. Свойство CacheControl объекта HttpResponseHeaderCollection возвращает объект HttpCacheDirectiveHeaderValueCollection.
Списки элементов коллекции
Для JavaScript HttpCacheDirectiveHeaderValueCollection содержит элементы, отображаемые в списках элементов. Кроме того, HttpCacheDirectiveHeaderValueCollection поддерживает элементы Array.prototype и использует индекс для доступа к элементам.
Перечисление коллекции на C# или Microsoft Visual Basic
Вы можете выполнить итерацию по объекту HttpCacheDirectiveHeaderValueCollection в C# или Microsoft Visual Basic. Во многих случаях, например с помощью синтаксиса foreach , компилятор выполняет это приведение за вас, и вам не нужно выполнять приведение IEnumerable<HttpNameValueHeaderValue>
явно. Если вам нужно выполнить приведение явным образом, например, если вы хотите вызвать GetEnumerator, приведите объект коллекции к IEnumerable<T> с ограничением HttpNameValueHeaderValue .
Свойства
MaxAge |
Возвращает или задает значение директивы max-age в заголовке HTTP Cache-Control . |
MaxStale |
Возвращает или задает значение директивы max-устаревшего значения в заголовке HTTP Cache-Control . |
MinFresh |
Возвращает или задает значение директивы min-fresh в заголовке HTTP Cache-Control . |
SharedMaxAge |
Возвращает или задает значение директивы s-maxage в заголовке HTTP Cache-Control . |
Size |
Возвращает количество объектов HttpNameValueHeaderValue в коллекции. |