Http​Multipart​Content Http​Multipart​Content Http​Multipart​Content Class

Definition

Provides HTTP content that uses the multipart/* MIME type.

public : sealed class HttpMultipartContent : IIterable, IClosable, IStringable, IHttpContent, IHttpMultipartContentpublic sealed class HttpMultipartContent : IEnumerable, IDisposable, IStringable, IHttpContent, IHttpMultipartContentPublic NotInheritable Class HttpMultipartContent Implements IEnumerable, IDisposable, IStringable, IHttpContent, IHttpMultipartContent
Attributes
Windows 10 requirements
Device family
Windows 10 (introduced v10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced v1)

Remarks

Enumerating the collection in C# or Microsoft Visual Basic

You can iterate through an HttpMultipartContent 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<IHttpContent> explicitly. If you do need to cast explicitly, for example if you want to call GetEnumerator, cast to IEnumerable<T> with an IHttpContent constraint.

Constructors

HttpMultipartContent() HttpMultipartContent() HttpMultipartContent()

HttpMultipartContent(String) HttpMultipartContent(String) HttpMultipartContent(String)

Initializes a new instance of the HttpMultipartContent class with the specified MIME subtype.

public : HttpMultipartContent(PlatForm::String subtype)public HttpMultipartContent(String subtype)Public Sub New(subtype As String)
Parameters
subtype
PlatForm::String String String

The MIME subtype of the multipart content.

Attributes

Remarks

Below are the exceptions that this function throws.

E_INVALIDARG

The subtype parameter is null (Nothing in Visual Basic).

See Also

HttpMultipartContent(String, String) HttpMultipartContent(String, String) HttpMultipartContent(String, String)

Initializes a new instance of the HttpMultipartContent class with the specified MIME subtype and boundary string.

public : HttpMultipartContent(PlatForm::String subtype, PlatForm::String boundary)public HttpMultipartContent(String subtype, String boundary)Public Sub New(subtype As String, boundary As String)
Parameters
subtype
PlatForm::String String String

The MIME subtype of the multipart content.

boundary
PlatForm::String String String

The boundary string for the multipart content.

Attributes

Remarks

Below are the exceptions that this function throws.

E_INVALIDARG

The subtype parameter is null (Nothing in Visual Basic).

The boundary parameter is null (Nothing in Visual Basic) or contains only white space characters or the boundary ends with a space character.

The length of the boundary parameter is greater than 70.

See Also

Properties

Headers Headers Headers

Get a collection of content headers set on the HttpMultipartContent.

public : HttpContentHeaderCollection Headers { get; }public HttpContentHeaderCollection Headers { get; }Public ReadOnly Property Headers As HttpContentHeaderCollection
Attributes
See Also

Methods

Add(IHttpContent) Add(IHttpContent) Add(IHttpContent)

Add HTTP content to the HttpMultipartContent instance.

public : void Add(IHttpContent content)public void Add(IHttpContent content)Public Function Add(content As IHttpContent) As void
Parameters
content
IHttpContent IHttpContent IHttpContent

The HTTP content to add to HttpMultipartContent.

Attributes

Remarks

Below are the exceptions that this function throws.

E_INVALIDARG

The content parameter is null (Nothing in Visual Basic).

BufferAllAsync() BufferAllAsync() BufferAllAsync()

Serialize the HttpMultipartContent into memory as an asynchronous operation.

public : IAsyncOperationWithProgress<ulong, ulong> BufferAllAsync()public IAsyncOperationWithProgress<ulong, ulong> BufferAllAsync()Public Function BufferAllAsync() As IAsyncOperationWithProgress( Of ulong, ulong )
Returns
Attributes

Remarks

This operation will not block. The returned IAsyncOperationWithProgress(UInt64, UInt64) object will complete after all of the content has been written into memory.

The HttpMultipartContent class can be used to stream content that might be of arbitrary length. The BufferAllAsync method will fail if all of the HttpMultipartContent can't fit in memory.

Close() Close() Close()

Closes the HttpMultipartContent instance and releases allocated resources.

public : void Close()This member is not implemented in C#This member is not implemented in VB.Net
Attributes

Remarks

The Close method releases allocated resources used by the HttpMultipartContent instance. The Close method can manage the lifetime of system resources (memory for the HttpMultipartContent, for example) used by a Windows Runtime object.

In the .NET Framework 4.5, this method projects as the Dispose method. In Visual C++ component extensions (C++/CX), this method projects as the destructor (delete operator).

Apps written in JavaScript, C#, or VB.NET use garbage collection to release resources. So the HttpMultipartContent object and associated resources doesn't get released until the garbage collection pass runs. The Close method allows an app to release these resources early rather than waiting for the object to be released by garbage collection.

Apps written in C++ or CX don't have a Close method since these apps can destroy the object. In C++ and CX, objects are released when they fall out of program scope or as part of the destructor (delete operator) for the object.

Dispose() Dispose() Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

This member is not implemented in C++void Dispose()Sub Dispose
Attributes

First() First() First()

Gets an object that can be used to enumerate the contents in the HttpMultipartContent object.

public : IIterator<IHttpContent> First()This member is not implemented in C#This member is not implemented in VB.Net
Returns

An object that can be used to enumerate the contents in the HttpMultipartContent object.

Attributes

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

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

Attributes

ReadAsBufferAsync() ReadAsBufferAsync() ReadAsBufferAsync()

Serialize the HttpMultipartContent to a buffer as an asynchronous operation.

public : IAsyncOperationWithProgress<IBuffer, ulong> ReadAsBufferAsync()public IAsyncOperationWithProgress<IBuffer, ulong> ReadAsBufferAsync()Public Function ReadAsBufferAsync() As IAsyncOperationWithProgress( Of IBuffer, ulong )
Returns
Attributes

Remarks

This operation will not block. The returned IAsyncOperationWithProgress(IBuffer, UInt64) object will complete after all of the content has been written to the buffer.

The HttpMultipartContent class can be used to stream content that might be of arbitrary length. The ReadAsBufferAsync method will fail if all of the HttpMultipartContent can't fit in memory since this method requires the entire content to be buffered in memory first.

ReadAsInputStreamAsync() ReadAsInputStreamAsync() ReadAsInputStreamAsync()

Serialize the HttpMultipartContent and return an input stream that represents the content as an asynchronous operation.

public : IAsyncOperationWithProgress<IInputStream, ulong> ReadAsInputStreamAsync()public IAsyncOperationWithProgress<IInputStream, ulong> ReadAsInputStreamAsync()Public Function ReadAsInputStreamAsync() As IAsyncOperationWithProgress( Of IInputStream, ulong )
Returns
Attributes

Remarks

This operation will not block. The returned IAsyncOperationWithProgress(IInputStream, UInt64) object will complete after all of the content has been written to the stream.

ReadAsStringAsync() ReadAsStringAsync() ReadAsStringAsync()

Serialize the HttpMultipartContent to a String as an asynchronous operation.

public : IAsyncOperationWithProgress<PlatForm::String, ulong> ReadAsStringAsync()public IAsyncOperationWithProgress<string, ulong> ReadAsStringAsync()Public Function ReadAsStringAsync() As IAsyncOperationWithProgress( Of string, ulong )
Returns
IAsyncOperationWithProgress<PlatForm::String, ulong> IAsyncOperationWithProgress<string, ulong> IAsyncOperationWithProgress<string, ulong>

The object representing the asynchronous operation.

Attributes

Remarks

This operation will not block. The returned IAsyncOperationWithProgress(String, UInt64) object will complete after all of the content has been written to the String.

The HttpMultipartContent class can be used to stream content that might be of arbitrary length. The ReadAsStringAsync method will fail if all of the HttpMultipartContent can't fit in memory since this method requires the entire content to be buffered in memory first.

ToString() ToString() ToString()

Returns a string that represents the current HttpMultipartContent object.

public : PlatForm::String ToString()public string ToString()Public Function ToString() As string
Returns
PlatForm::String string string

A string that represents the current object.

Attributes

TryComputeLength(UInt64) TryComputeLength(UInt64) TryComputeLength(UInt64)

Determines whether the HttpMultipartContent has a valid length in bytes.

public : PlatForm::Boolean TryComputeLength(unsigned __int64 length)public bool TryComputeLength(UInt64 length)Public Function TryComputeLength(length As UInt64) As bool
Parameters
length
unsigned __int64 UInt64 UInt64

The length in bytes of the HttpMultipartContent.

Returns
PlatForm::Boolean bool bool

true if length is a valid length; otherwise, false.

Attributes

Remarks

The TryComputeLength method calculates the content length for HTTP content in HttpMultipartContent. Headers set on the content are not included in the content length. This is useful for content types that are easy to calculate the content length.

If computing the content length is not possible or expensive (would require the system to buffer the whole content where the serialization would be expensive or require the system to allocate a lot of memory), this method can return false. If this method returns false, this implies that either chunked transfer is needed or the content must get buffered before being sent to the server.

WriteToStreamAsync(IOutputStream) WriteToStreamAsync(IOutputStream) WriteToStreamAsync(IOutputStream)

Write the HttpMultipartContent to an output stream as an asynchronous operation.

public : IAsyncOperationWithProgress<ulong, ulong> WriteToStreamAsync(IOutputStream outputStream)public IAsyncOperationWithProgress<ulong, ulong> WriteToStreamAsync(IOutputStream outputStream)Public Function WriteToStreamAsync(outputStream As IOutputStream) As IAsyncOperationWithProgress( Of ulong, ulong )
Parameters
outputStream
IOutputStream IOutputStream IOutputStream

The output stream to write to.

Returns
Attributes

Remarks

This operation will not block. The returned IAsyncOperationWithProgress(UInt64, UInt64) object will complete after all of the content has been written to the output stream.

See Also