HttpCacheDirectiveHeaderValueCollection Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa o valor do cabeçalho HTTP Cache-Control no conteúdo HTTP associado a uma solicitação OU resposta 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
- Herança
- Atributos
- Implementações
Requisitos do Windows
Família de dispositivos |
Windows 10 (introduzida na 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduzida na v1.0)
|
Exemplos
O código de exemplo a seguir mostra um método para obter e definir o cabeçalho HTTP Cache-Control em um objeto HttpRequestMessage usando as propriedades e os métodos na classe 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());
}
O código de exemplo a seguir mostra um método para obter e definir o cabeçalho HTTP Cache-Control em um objeto HttpResponseMessage usando as propriedades e os métodos na classe 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());
}
Comentários
A classe HttpCacheDirectiveHeaderValueCollection representa o valor do cabeçalho HTTP Cache-Control no conteúdo HTTP associado a uma solicitação HTTP ou uma resposta HTTP.
A propriedade CacheControl no HttpRequestHeaderCollection retorna um HttpCacheDirectiveHeaderValueCollection. A propriedade CacheControl no HttpResponseHeaderCollection retorna um HttpCacheDirectiveHeaderValueCollection.
Listas de membros da coleção
Para JavaScript, HttpCacheDirectiveHeaderValueCollection tem os membros mostrados nas listas de membros. Além disso, HttpCacheDirectiveHeaderValueCollection dá suporte a membros de Array.prototype e ao uso de um índice para acessar itens.
Enumerando a coleção em C# ou Microsoft Visual Basic
Você pode iterar por meio de um objeto HttpCacheDirectiveHeaderValueCollection em C# ou Microsoft Visual Basic. Em muitos casos, como o uso da sintaxe foreach , o compilador faz essa conversão para você e você não precisará converter IEnumerable<HttpNameValueHeaderValue>
explicitamente. Se você precisar converter explicitamente, por exemplo, se quiser chamar GetEnumerator, converta o objeto de coleção para IEnumerable<T> com uma restrição HttpNameValueHeaderValue .
Propriedades
MaxAge |
Obtém ou define o valor da diretiva max-age no cabeçalho HTTP Cache-Control . |
MaxStale |
Obtém ou define o valor da diretiva max-stale no cabeçalho HTTP Cache-Control . |
MinFresh |
Obtém ou define o valor da diretiva min-fresh no cabeçalho HTTP Cache-Control . |
SharedMaxAge |
Obtém ou define o valor da diretiva s-maxage no cabeçalho HTTP Cache-Control . |
Size |
Obtém o número de objetos HttpNameValueHeaderValue na coleção. |