Http​Product​Info​Header​Value​Collection Http​Product​Info​Header​Value​Collection Http​Product​Info​Header​Value​Collection Http​Product​Info​Header​Value​Collection Class

Definition

Represents the value of the User-Agent HTTP header on an HTTP request.

public : sealed class HttpProductInfoHeaderValueCollection : IIterable, IVector, IStringable, IHttpProductInfoHeaderValueCollectionpublic sealed class HttpProductInfoHeaderValueCollection : IEnumerable, IList, IStringable, IHttpProductInfoHeaderValueCollectionPublic NotInheritable Class HttpProductInfoHeaderValueCollection Implements IEnumerable, IList, IStringable, IHttpProductInfoHeaderValueCollection// You can use this class in JavaScript.
Attributes
Windows 10 requirements
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 User-Agent HTTP header on an HttpRequestMessage object using the properties and methods on the HttpProductInfoHeaderValueCollection and HttpProductInfoHeaderValue classes.


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

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

            // Set the header with a string.
            parsedOk = request.Headers.UserAgent.TryParseAdd("testprogram/1.0");

            // Set the header with a strong type.
            request.Headers.UserAgent.Add(new HttpProductInfoHeaderValue("myprogram", "2.2"));

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

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

Remarks

The HttpProductInfoHeaderValueCollection represents the value of the User-Agent HTTP header on an HTTP request.

The HttpProductInfoHeaderValueCollection is a collection of HttpProductInfoHeaderValue objects used for product information in the HTTP User-Agent header.

The User-Agent header contains information about the user agent originating the request. The User-Agent header can contain multiple product tokens and comments identifying the user agent and any sub-products.

The UserAgent property on the HttpRequestHeaderCollection returns an HttpProductInfoHeaderValueCollection object.

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; }
Parameters
index

The zero-based index of the element to get or set.

Value
T T T T

The element at the specified index.

Exceptions

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.

Size Size Size Size

Gets the number of HttpProductInfoHeaderValue objects in the collection.

public : unsigned short 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 short uint uint uint

The number of HttpProductInfoHeaderValue objects in the HttpProductInfoHeaderValueCollection.

Methods

Append(HttpProductInfoHeaderValue) Append(HttpProductInfoHeaderValue) Append(HttpProductInfoHeaderValue) Append(HttpProductInfoHeaderValue)

Adds a new HttpProductInfoHeaderValue item to the end of the collection.

public : void Append(HttpProductInfoHeaderValue value)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
Parameters

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 HttpProductInfoHeaderValue item in the collection.

public : IIterator<HttpProductInfoHeaderValue> First()This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
Returns
See Also

GetAt(UInt32) GetAt(UInt32) GetAt(UInt32) GetAt(UInt32)

Returns the HttpProductInfoHeaderValue at the specified index in the collection.

public : HttpProductInfoHeaderValue 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.
Parameters
index
unsigned int UInt32 UInt32 UInt32

The zero-based index of a specified item in the collection.

Returns

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()
Returns

An enumerator that can be used to iterate through the collection.

GetMany(UInt32, HttpProductInfoHeaderValue[]) GetMany(UInt32, HttpProductInfoHeaderValue[]) GetMany(UInt32, HttpProductInfoHeaderValue[]) GetMany(UInt32, HttpProductInfoHeaderValue[])

Retrieves the HttpProductInfoHeaderValue items that start at the specified index in the collection.

public : unsigned short GetMany(unsigned int startIndex, HttpProductInfoHeaderValue[] items)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
Parameters
startIndex
unsigned int UInt32 UInt32 UInt32

The zero-based index of the start of the HttpProductInfoHeaderValue items in the HttpProductInfoHeaderValueCollection.

items
HttpProductInfoHeaderValue[] HttpProductInfoHeaderValue[] HttpProductInfoHeaderValue[] HttpProductInfoHeaderValue[]

An array of HttpProductInfoHeaderValue items that start at startIndex in the HttpProductInfoHeaderValueCollection.

Returns
unsigned short uint uint uint

The number of items retrieved.

GetView() GetView() GetView() GetView()

Returns an immutable view of the HttpProductInfoHeaderValueCollection.

public : IVectorView<HttpProductInfoHeaderValue> GetView()This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
Returns
IVectorView<HttpProductInfoHeaderValue> IReadOnlyList<HttpProductInfoHeaderValue> IReadOnlyList<HttpProductInfoHeaderValue> IReadOnlyList<HttpProductInfoHeaderValue>

The view of the HttpProductInfoHeaderValueCollection.

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)
Parameters
item
T T T T

The object to locate in the System.Collections.Generic.IList`1.

Returns

The index of item if found in the list; otherwise, -1.

IndexOf(HttpProductInfoHeaderValue, UInt32) IndexOf(HttpProductInfoHeaderValue, UInt32) IndexOf(HttpProductInfoHeaderValue, UInt32) IndexOf(HttpProductInfoHeaderValue, UInt32)

Retrieves the index of an HttpProductInfoHeaderValue in the collection.

public : PlatForm::Boolean IndexOf(HttpProductInfoHeaderValue 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.
Parameters
index
unsigned int UInt32 UInt32 UInt32

The index of the HttpProductInfoHeaderValue in the HttpProductInfoHeaderValueCollection.

If the item is found, this is the zero-based index of the item; otherwise, this parameter is 0.

Returns
PlatForm::Boolean bool bool bool

Indicates whether the item is found.

true if the HttpProductInfoHeaderValue 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)
Parameters
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.

Exceptions

index is not a valid index in the System.Collections.Generic.IList`1.

The System.Collections.Generic.IList`1 is read-only.

InsertAt(UInt32, HttpProductInfoHeaderValue) InsertAt(UInt32, HttpProductInfoHeaderValue) InsertAt(UInt32, HttpProductInfoHeaderValue) InsertAt(UInt32, HttpProductInfoHeaderValue)

Inserts an HttpProductInfoHeaderValue into the collection at the specified index.

public : void InsertAt(unsigned int index, HttpProductInfoHeaderValue value)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
Parameters
index
unsigned int UInt32 UInt32 UInt32

The zero-based index at which value should be inserted.

ParseAdd(String) ParseAdd(String) ParseAdd(String) ParseAdd(String)

Parses and adds an entry to the HttpProductInfoHeaderValueCollection.

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.
Parameters
input
PlatForm::String String String String

The entry to add.

Remarks

Below are the 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 User-Agent 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)
Parameters
index

The zero-based index of the item to remove.

Exceptions

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 HttpMethodHeaderValueCollection.

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.
Parameters
index
unsigned int UInt32 UInt32 UInt32

The index of the entry to remove.

RemoveAtEnd() RemoveAtEnd() RemoveAtEnd() RemoveAtEnd()

Removes the last HttpProductInfoHeaderValue 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(HttpProductInfoHeaderValue[]) ReplaceAll(HttpProductInfoHeaderValue[]) ReplaceAll(HttpProductInfoHeaderValue[]) ReplaceAll(HttpProductInfoHeaderValue[])

Replaces all the HttpProductInfoHeaderValue items in the collection with the specified HttpProductInfoHeaderValue items.

public : void ReplaceAll(HttpProductInfoHeaderValue[] items)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
Parameters
items
HttpProductInfoHeaderValue[] HttpProductInfoHeaderValue[] HttpProductInfoHeaderValue[] HttpProductInfoHeaderValue[]

The HttpProductInfoHeaderValue items to add to the collection.

SetAt(UInt32, HttpProductInfoHeaderValue) SetAt(UInt32, HttpProductInfoHeaderValue) SetAt(UInt32, HttpProductInfoHeaderValue) SetAt(UInt32, HttpProductInfoHeaderValue)

Sets the HttpProductInfoHeaderValue at the specified index in the collection.

public : void SetAt(unsigned int index, HttpProductInfoHeaderValue value)This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
Parameters
index
unsigned int UInt32 UInt32 UInt32

The zero-based index at which to set the HttpProductInfoHeaderValue.

ToString() ToString() ToString() ToString()

Returns a string that represents the current HttpProductInfoHeaderValueCollection object.

public : PlatForm::String ToString()public string ToString()Public Function ToString() As string// You can use this method in JavaScript.
Returns
PlatForm::String string string string

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 HttpProductInfoHeaderValueCollection.

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.
Parameters
input
PlatForm::String String String String

The item to parse and add.

Returns
PlatForm::Boolean bool bool bool

true if the item successfully parsed and was added; otherwise false.

See Also