HttpCacheDirectiveHeaderValueCollection
HttpCacheDirectiveHeaderValueCollection
HttpCacheDirectiveHeaderValueCollection
HttpCacheDirectiveHeaderValueCollection
Class
Definition
Represents the value of the Cache-Control HTTP header on HTTP content associated with an HTTP request or response.
public : sealed class HttpCacheDirectiveHeaderValueCollection : IIterable, IVector, IStringable, IHttpCacheDirectiveHeaderValueCollectionpublic sealed class HttpCacheDirectiveHeaderValueCollection : IEnumerable, IList, IStringable, IHttpCacheDirectiveHeaderValueCollectionPublic NotInheritable Class HttpCacheDirectiveHeaderValueCollection Implements IEnumerable, IList, IStringable, IHttpCacheDirectiveHeaderValueCollection// You can use this class in JavaScript.
- Attributes
| Device family |
Windows 10 (introduced v10.0.10240.0)
|
| API contract |
Windows.Foundation.UniversalApiContract (introduced v1)
|
Examples
The following sample code shows a method to get and set the Cache-Control HTTP header on an HttpRequestMessage object using the properties and methods on the HttpCacheDirectiveHeaderValueCollection class.
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());
}
The following sample code shows a method to get and set the Cache-Control HTTP header on an HttpResponseMessage object using the properties and methods on the HttpCacheDirectiveHeaderValueCollection class.
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());
}
Remarks
The HttpCacheDirectiveHeaderValueCollection class represents the value of the Cache-Control HTTP header on HTTP content associated with an HTTP request or an HTTP response.
The CacheControl property on the HttpRequestHeaderCollection returns an HttpCacheDirectiveHeaderValueCollection. The CacheControl property on the HttpResponseHeaderCollection returns an HttpCacheDirectiveHeaderValueCollection.
Collection member lists
For JavaScript, HttpCacheDirectiveHeaderValueCollection has the members shown in the member lists. In addition, HttpCacheDirectiveHeaderValueCollection supports members of Array.prototype and using an index to access items.
Enumerating the collection in C# or Microsoft Visual Basic
You can iterate through an HttpCacheDirectiveHeaderValueCollection object in C# or Microsoft Visual Basic. In many cases, such as using foreach syntax, the compiler does this casting for you and you won't need to cast to IEnumerable<HttpNameValueHeaderValue> explicitly. If you do need to cast explicitly, for example if you want to call GetEnumerator, cast the collection object to IEnumerable
Properties
Item[Int32] Item[Int32] Item[Int32] Item[Int32]
Gets or sets the element at the specified index.
This member is not implemented in C++T this[int index] { get; set; }Property Item(index As Integer) As TT this[int index] { get; set; }
- index
The zero-based index of the element to get or set.
- Value
- T T T T
The element at the specified index.
index is not a valid index in the System.Collections.Generic.IList`1.
The property is set and the System.Collections.Generic.IList`1 is read-only.
MaxAge MaxAge MaxAge MaxAge
Gets or sets the value of the max-age directive in the Cache-Control HTTP header.
public : IReference<TimeSpan> MaxAge { get; set; }public Nullable<TimeSpan> MaxAge { get; set; }Public ReadWrite Property MaxAge As Nullable<TimeSpan>// You can use this property in JavaScript.
- Value
- IReference<TimeSpan> Nullable<TimeSpan> Nullable<TimeSpan> Nullable<TimeSpan>
The value of the max-age directive in the Cache-Control HTTP header.
MaxStale MaxStale MaxStale MaxStale
Gets or sets the value of the max-stale directive in the Cache-Control HTTP header.
public : IReference<TimeSpan> MaxStale { get; set; }public Nullable<TimeSpan> MaxStale { get; set; }Public ReadWrite Property MaxStale As Nullable<TimeSpan>// You can use this property in JavaScript.
- Value
- IReference<TimeSpan> Nullable<TimeSpan> Nullable<TimeSpan> Nullable<TimeSpan>
the value of the max-stale directive in the Cache-Control HTTP header.
MinFresh MinFresh MinFresh MinFresh
Gets or sets the value of the min-fresh directive in the Cache-Control HTTP header.
public : IReference<TimeSpan> MinFresh { get; set; }public Nullable<TimeSpan> MinFresh { get; set; }Public ReadWrite Property MinFresh As Nullable<TimeSpan>// You can use this property in JavaScript.
- Value
- IReference<TimeSpan> Nullable<TimeSpan> Nullable<TimeSpan> Nullable<TimeSpan>
The value of the min-fresh directive in the Cache-Control HTTP header.
SharedMaxAge SharedMaxAge SharedMaxAge SharedMaxAge
Gets or sets the value of the s-maxage directive in the Cache-Control HTTP header.
public : IReference<TimeSpan> SharedMaxAge { get; set; }public Nullable<TimeSpan> SharedMaxAge { get; set; }Public ReadWrite Property SharedMaxAge As Nullable<TimeSpan>// You can use this property in JavaScript.
- Value
- IReference<TimeSpan> Nullable<TimeSpan> Nullable<TimeSpan> Nullable<TimeSpan>
The value of the s-maxage directive in the Cache-Control HTTP header.
Size Size Size Size
Gets the number of HttpNameValueHeaderValue objects in the collection.
public : unsigned int Size { get; }This member is not implemented in C#This member is not implemented in VB.Net// You can use this property in JavaScript.
- Value
- unsigned int uint uint uint
The number of HttpNameValueHeaderValue objects in the HttpCacheDirectiveHeaderValueCollection.
Methods
Append(HttpNameValueHeaderValue) Append(HttpNameValueHeaderValue) Append(HttpNameValueHeaderValue) Append(HttpNameValueHeaderValue)
Adds a new HttpNameValueHeaderValue item to the end of the collection.
public : void Append(HttpNameValueHeaderValue value)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
- value
- HttpNameValueHeaderValue HttpNameValueHeaderValue HttpNameValueHeaderValue HttpNameValueHeaderValue
The HttpNameValueHeaderValue object to append.
Clear() Clear() Clear() Clear()
Removes all objects from the collection.
public : void Clear()This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
First() First() First() First()
Retrieves an iterator to the first HttpNameValueHeaderValue item in the collection.
public : IIterator<HttpNameValueHeaderValue> First()This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
An object that can be used to enumerate the HttpNameValueHeaderValue items in the collection. The iterator points to the first HttpNameValueHeaderValue item in the HttpCacheDirectiveHeaderValueCollection.
GetAt(UInt32) GetAt(UInt32) GetAt(UInt32) GetAt(UInt32)
Returns the HttpNameValueHeaderValue at the specified index in the collection.
public : HttpNameValueHeaderValue GetAt(unsigned int index)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
- index
- unsigned int UInt32 UInt32 UInt32
The zero-based index of a specified item in the HttpCacheDirectiveHeaderValueCollection.
The HttpNameValueHeaderValue at the specified index in the HttpCacheDirectiveHeaderValueCollection.
GetEnumerator() GetEnumerator() GetEnumerator() GetEnumerator()
Returns an enumerator that iterates through the collection.
This member is not implemented in C++IEnumerator<T> GetEnumerator()Function GetEnumerator As IEnumerator(Of T)IEnumerator<T> GetEnumerator()
An enumerator that can be used to iterate through the collection.
GetMany(UInt32, HttpNameValueHeaderValue[]) GetMany(UInt32, HttpNameValueHeaderValue[]) GetMany(UInt32, HttpNameValueHeaderValue[]) GetMany(UInt32, HttpNameValueHeaderValue[])
Retrieves the HttpNameValueHeaderValue items that start at the specified index in the collection.
public : unsigned int GetMany(unsigned int startIndex, HttpNameValueHeaderValue[] items)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
- startIndex
- unsigned int UInt32 UInt32 UInt32
The zero-based index of the start of the HttpNameValueHeaderValue items in the HttpCacheDirectiveHeaderValueCollection.
- items
- HttpNameValueHeaderValue[] HttpNameValueHeaderValue[] HttpNameValueHeaderValue[] HttpNameValueHeaderValue[]
An array of HttpNameValueHeaderValue items that start at startIndex in the HttpCacheDirectiveHeaderValueCollection.
The number of HttpNameValueHeaderValue items retrieved.
GetView() GetView() GetView() GetView()
Returns an immutable view of the HttpCacheDirectiveHeaderValueCollection.
public : IVectorView<HttpNameValueHeaderValue> GetView()This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
The view of the HttpCacheDirectiveHeaderValueCollection.
IndexOf(T) IndexOf(T) IndexOf(T) IndexOf(T)
Determines the index of a specific item in the System.Collections.Generic.IList`1.
This member is not implemented in C++int IndexOf(T item)Function IndexOf(item As T) As Integerint IndexOf(T item)
- item
- T T T T
The object to locate in the System.Collections.Generic.IList`1.
The index of item if found in the list; otherwise, -1.
IndexOf(HttpNameValueHeaderValue, UInt32) IndexOf(HttpNameValueHeaderValue, UInt32) IndexOf(HttpNameValueHeaderValue, UInt32) IndexOf(HttpNameValueHeaderValue, UInt32)
Retrieves the index of an HttpNameValueHeaderValue in the collection.
public : PlatForm::Boolean IndexOf(HttpNameValueHeaderValue value, unsigned int index)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
- value
- HttpNameValueHeaderValue HttpNameValueHeaderValue HttpNameValueHeaderValue HttpNameValueHeaderValue
The HttpNameValueHeaderValue to find in the HttpCacheDirectiveHeaderValueCollection.
- index
- unsigned int UInt32 UInt32 UInt32
The index of the HttpNameValueHeaderValue in the HttpCacheDirectiveHeaderValueCollection.
If the item is found, this is the zero-based index of the item; otherwise, this parameter is 0.
Indicates whether the item is found.
true if the HttpNameValueHeaderValue item is found; otherwise, false.
Insert(Int32, T) Insert(Int32, T) Insert(Int32, T) Insert(Int32, T)
Inserts an item to the System.Collections.Generic.IList`1 at the specified index.
This member is not implemented in C++void Insert(int index, T item)Sub Insert(index As Integer, item As T)void Insert(int index, T item)
- index
The zero-based index at which item should be inserted.
- item
- T T T T
The object to insert into the System.Collections.Generic.IList`1.
index is not a valid index in the System.Collections.Generic.IList`1.
The System.Collections.Generic.IList`1 is read-only.
InsertAt(UInt32, HttpNameValueHeaderValue) InsertAt(UInt32, HttpNameValueHeaderValue) InsertAt(UInt32, HttpNameValueHeaderValue) InsertAt(UInt32, HttpNameValueHeaderValue)
Inserts an HttpNameValueHeaderValue into the collection at the specified index.
public : void InsertAt(unsigned int index, HttpNameValueHeaderValue value)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
- index
- unsigned int UInt32 UInt32 UInt32
The zero-based index at which value should be inserted.
- value
- HttpNameValueHeaderValue HttpNameValueHeaderValue HttpNameValueHeaderValue HttpNameValueHeaderValue
The object to insert into the collection.
ParseAdd(String) ParseAdd(String) ParseAdd(String) ParseAdd(String)
Parses and adds an entry to the HttpCacheDirectiveHeaderValueCollection.
public : void ParseAdd(PlatForm::String input)public void ParseAdd(String input)Public Function ParseAdd(input As String) As void// You can use this method in JavaScript.
- input
- PlatForm::String String String String
The entry to add.
Remarks
Below are exceptions that this function throws.
E_INVALIDARG
The input parameter is null (Nothing in Visual Basic).
The input parameter is not a valid value for the Cache-Control HTTP header.
RemoveAt(Int32) RemoveAt(Int32) RemoveAt(Int32) RemoveAt(Int32)
Removes the System.Collections.Generic.IList`1 item at the specified index.
This member is not implemented in C++void RemoveAt(int index)Sub RemoveAt(index As Integer)void RemoveAt(int index)
- index
The zero-based index of the item to remove.
index is not a valid index in the System.Collections.Generic.IList`1.
The System.Collections.Generic.IList`1 is read-only.
RemoveAt(UInt32) RemoveAt(UInt32) RemoveAt(UInt32) RemoveAt(UInt32)
Removes the entry at the specified index from the HttpCacheDirectiveHeaderValueCollection.
public : void RemoveAt(unsigned int index)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
- index
- unsigned int UInt32 UInt32 UInt32
The index of the entry to remove.
RemoveAtEnd() RemoveAtEnd() RemoveAtEnd() RemoveAtEnd()
Removes the last HttpNameValueHeaderValue item from the collection.
public : void RemoveAtEnd()This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
ReplaceAll(HttpNameValueHeaderValue[]) ReplaceAll(HttpNameValueHeaderValue[]) ReplaceAll(HttpNameValueHeaderValue[]) ReplaceAll(HttpNameValueHeaderValue[])
Replaces all the HttpNameValueHeaderValue items in the collection with the specified HttpNameValueHeaderValue items.
public : void ReplaceAll(HttpNameValueHeaderValue[] items)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
- items
- HttpNameValueHeaderValue[] HttpNameValueHeaderValue[] HttpNameValueHeaderValue[] HttpNameValueHeaderValue[]
The collection of HttpNameValueHeaderValue items to add to the collection.
SetAt(UInt32, HttpNameValueHeaderValue) SetAt(UInt32, HttpNameValueHeaderValue) SetAt(UInt32, HttpNameValueHeaderValue) SetAt(UInt32, HttpNameValueHeaderValue)
Sets the HttpNameValueHeaderValue at the specified index in the collection.
public : void SetAt(unsigned int index, HttpNameValueHeaderValue value)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
- index
- unsigned int UInt32 UInt32 UInt32
The zero-based index at which to set the HttpNameValueHeaderValue.
- value
- HttpNameValueHeaderValue HttpNameValueHeaderValue HttpNameValueHeaderValue HttpNameValueHeaderValue
The item to set.
ToString() ToString() ToString() ToString()
Returns a string that represents the current HttpCacheDirectiveHeaderValueCollection object.
public : PlatForm::String ToString()public string ToString()Public Function ToString() As string// You can use this method in JavaScript.
A string that represents the current object.
TryParseAdd(String) TryParseAdd(String) TryParseAdd(String) TryParseAdd(String)
Tries to parse and add the specified item to the HttpCacheDirectiveHeaderValueCollection.
public : PlatForm::Boolean TryParseAdd(PlatForm::String input)public bool TryParseAdd(String input)Public Function TryParseAdd(input As String) As bool// You can use this method in JavaScript.
- input
- PlatForm::String String String String
The item to parse and add.
true if the item successfully parsed and was added; otherwise false.