HttpContentHeaderCollection Class
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Provides a collection of the HTTP headers associated with content on an HTTP request or response.
public ref class HttpContentHeaderCollection sealed : IIterable<IKeyValuePair<Platform::String ^, Platform::String ^> ^>, IMap<Platform::String ^, Platform::String ^>, IStringable
/// [Windows.Foundation.Metadata.Activatable(65536, Windows.Foundation.UniversalApiContract)]
/// [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 HttpContentHeaderCollection final : IIterable<IKeyValuePair<winrt::hstring, winrt::hstring const&>>, IMap<winrt::hstring, winrt::hstring const&>, 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)]
/// [Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
class HttpContentHeaderCollection final : IIterable<IKeyValuePair<winrt::hstring, winrt::hstring const&>>, IMap<winrt::hstring, winrt::hstring const&>, IStringable
[Windows.Foundation.Metadata.Activatable(65536, typeof(Windows.Foundation.UniversalApiContract))]
[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 HttpContentHeaderCollection : IDictionary<string,string>, IEnumerable<KeyValuePair<string,string>>, 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)]
[Windows.Foundation.Metadata.Activatable(65536, "Windows.Foundation.UniversalApiContract")]
public sealed class HttpContentHeaderCollection : IDictionary<string,string>, IEnumerable<KeyValuePair<string,string>>, IStringable
function HttpContentHeaderCollection()
Public NotInheritable Class HttpContentHeaderCollection
Implements IDictionary(Of String, String), IEnumerable(Of KeyValuePair(Of String, String)), IStringable
- Inheritance
- Attributes
- Implements
-
IMap<String,String> IDictionary<String,String> IMap<Platform::String,Platform::String> IMap<winrt::hstring,winrt::hstring> IIterable<IKeyValuePair<K,V>> IEnumerable<KeyValuePair<K,V>> IIterable<IKeyValuePair<String,String>> IEnumerable<KeyValuePair<String,String>> IIterable<IKeyValuePair<Platform::String,Platform::String>> IIterable<IKeyValuePair<winrt::hstring,winrt::hstring>> IStringable
Windows requirements
Device family |
Windows 10 (introduced in 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduced in v1.0)
|
Examples
The following sample code shows a method to get and set headers on HTTP content using the properties on the HttpContentHeaderCollection object. The Windows.Web.Http.Headers namespace has a number of strongly-typed header collection and value classes for specific HTTP headers that can be used to get and set headers with validation.
using System;
using Windows.Web.Http;
using Windows.Web.Http.Headers;
public void DemonstrateContentHeader()
{
DemonstrateHeaderContentContentDisposition();
}
public void DemonstrateHeaderContentContentDisposition()
{
var content = new HttpStringContent("");
bool parsedOk = false;
// Set the header with a string.
HttpContentDispositionHeaderValue value;
parsedOk = HttpContentDispositionHeaderValue.TryParse("attachment; filename=\"fname.ext\"", out value);
content.Headers.ContentDisposition = value;
// Set the header with a strong type.
content.Headers.ContentDisposition = new HttpContentDispositionHeaderValue("attachment");
content.Headers.ContentDisposition.FileName = "myfile.exe";
// Get the strong type out
System.Diagnostics.Debug.WriteLine("ContentDisposition filename: {0}={1}",
content.Headers.ContentDisposition.DispositionType,
content.Headers.ContentDisposition.FileName);
// The ToString() is useful for diagnostics, too.
System.Diagnostics.Debug.WriteLine("The ContentDisposition ToString() results: {0}", content.Headers.ContentDisposition.ToString());
}
Remarks
The HttpContentHeaderCollection is a collection of the HTTP headers associated with the HTTP content on an HTTP request or an HTTP response message. The HttpContentHeaderCollection object can be used to get or set the specific headers on the HTTP content. Most of the properties on the HttpContentHeaderCollection object provide access to a container collection for a specific HTTP header.
The HttpContentHeaderCollection has a constructor and also is returned by the property on HttpBufferContent, HttpFormUrlEncodedContent, HttpMultipartContent, HttpMultipartFormDataContent, HttpStreamContent, and HttpStringContent, classes and the IHttpContent interface.
Enumerating the collection in C# or Microsoft Visual Basic
You can iterate through an HttpContentHeaderCollection 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
explicitly. If you do need to cast explicitly, for example if you want to call GetEnumerator, cast the collection object to IEnumerable<T> with a KeyValuePair of String and String as the constraint.
Constructors
HttpContentHeaderCollection() |
Initializes a new instance of the HttpContentHeaderCollection class. |
Properties
ContentDisposition |
Gets or sets the HttpContentDispositionHeaderValue object that represents the value of an HTTP Content-Disposition header on the HTTP content. |
ContentEncoding |
Gets the HttpContentCodingHeaderValueCollection of HttpContentCodingHeaderValue objects that represent the value of an HTTP Content-Encoding header on the HTTP content. |
ContentLanguage |
Gets the HttpLanguageHeaderValueCollection of objects that represent the value of an HTTP Content-Language header on the HTTP content. |
ContentLength |
Gets or sets the value of the HTTP Content-Length header on the HTTP content. |
ContentLocation |
Gets or sets the value of the HTTP Content-Location header on the HTTP content. |
ContentMD5 |
Gets or sets the value of an HTTP Content-MD5 header on the HTTP content. |
ContentRange |
Gets or sets the HttpContentRangeHeaderValue object that represent the value of an HTTP Content-Range header on the HTTP content. |
ContentType |
Gets or sets the HttpMediaTypeHeaderValue object that represent the value of an HTTP Content-Type header on the HTTP content. |
Expires |
Gets or sets the DateTime object that represents the value of an HTTP Expires header on the HTTP content. |
LastModified |
Gets or sets the DateTime object that represents the value of an HTTP Last-Modified header on the HTTP content. |
Size |
Gets the number of objects in the HttpContentHeaderCollection. |
Methods
Append(String, String) |
Adds a new item to the end of the HttpContentHeaderCollection. |
Clear() |
Removes all objects from the HttpContentHeaderCollection. |
First() |
Retrieves an iterator to the first item in the HttpContentHeaderCollection. |
GetView() |
Returns an immutable view of the HttpContentHeaderCollection. |
HasKey(String) |
Determines whether the HttpContentHeaderCollection contains the specified key. |
Insert(String, String) |
Inserts or replaces an item in the HttpContentHeaderCollection with the specified key and value. |
Lookup(String) |
Finds an item in the HttpContentHeaderCollection if it exists. |
Remove(String) |
Removes a specific object from the HttpContentHeaderCollection. |
ToString() |
Returns a string that represents the current HttpContentHeaderCollection object. |
TryAppendWithoutValidation(String, String) |
Try to append the specified item to the HttpContentHeaderCollection without validation. |