Http​Multipart​Form​Data​Content Http​Multipart​Form​Data​Content Http​Multipart​Form​Data​Content Http​Multipart​Form​Data​Content Class

Definition

Provides HTTP content that uses the multipart/form-data MIME type.

public : sealed class HttpMultipartFormDataContent : IIterable, IClosable, IStringable, IHttpContent, IHttpMultipartFormDataContentpublic sealed class HttpMultipartFormDataContent : IEnumerable, IDisposable, IStringable, IHttpContent, IHttpMultipartFormDataContentPublic NotInheritable Class HttpMultipartFormDataContent Implements IEnumerable, IDisposable, IStringable, IHttpContent, IHttpMultipartFormDataContent// 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)

Remarks

Enumerating the collection in C# or Microsoft Visual Basic

You can iterate through a HttpMultipartFormDataContent 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

HttpMultipartFormDataContent() HttpMultipartFormDataContent() HttpMultipartFormDataContent() HttpMultipartFormDataContent()

Initializes a new instance of the HttpMultipartFormDataContent class.

public : HttpMultipartFormDataContent()public HttpMultipartFormDataContent()Public Sub New()// You can use this method in JavaScript.
See Also

HttpMultipartFormDataContent(String) HttpMultipartFormDataContent(String) HttpMultipartFormDataContent(String) HttpMultipartFormDataContent(String)

Initializes a new instance of the HttpMultipartFormDataContent class with the specified boundary string.

public : HttpMultipartFormDataContent(PlatForm::String boundary)public HttpMultipartFormDataContent(String boundary)Public Sub New(boundary As String)// You can use this method in JavaScript.
Parameters
boundary
PlatForm::String String String String

The boundary string for the multipart content.

Remarks

Below are the exceptions that this function throws.

E_INVALIDARG

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.

Properties

Headers Headers Headers Headers

Get a collection of content headers set on the HttpMultipartFormDataContent.

public : HttpContentHeaderCollection Headers { get; }public HttpContentHeaderCollection Headers { get; }Public ReadOnly Property Headers As HttpContentHeaderCollection// You can use this property in JavaScript.
See Also

Methods

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

Add HTTP content to the HttpMultipartFormDataContent instance.

public : void Add(IHttpContent content)public void Add(IHttpContent content)Public Function Add(content As IHttpContent) As void// You can use this method in JavaScript.
Parameters

Remarks

Below are the exceptions that this function throws.

E_INVALIDARG

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

See Also

Add(IHttpContent, String) Add(IHttpContent, String) Add(IHttpContent, String) Add(IHttpContent, String)

Add HTTP content with a specified name to the HttpMultipartFormDataContent instance.

public : void Add(IHttpContent content, PlatForm::String name)public void Add(IHttpContent content, String name)Public Function Add(content As IHttpContent, name As String) As void// You can use this method in JavaScript.
Parameters
name
PlatForm::String String String String

The name for the HTTP content to add to HttpMultipartFormDataContent.

Remarks

Below are the exceptions that this function throws

E_INVALIDARG

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

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

See Also

Add(IHttpContent, String, String) Add(IHttpContent, String, String) Add(IHttpContent, String, String) Add(IHttpContent, String, String)

Add HTTP content with a specified name from a file to the HttpMultipartFormDataContent instance.

public : void Add(IHttpContent content, PlatForm::String name, PlatForm::String fileName)public void Add(IHttpContent content, String name, String fileName)Public Function Add(content As IHttpContent, name As String, fileName As String) As void// You can use this method in JavaScript.
Parameters
name
PlatForm::String String String String

The name for the HTTP content to add to HttpMultipartFormDataContent.

fileName
PlatForm::String String String String

The file name for the HTTP content to add to HttpMultipartFormDataContent.

Remarks

Below are the exceptions that this function throws.

E_INVALIDARG

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

The name parameter is null (Nothing in Visual Basic) or contains only white space characters.

The filename parameter is null (Nothing in Visual Basic) or contains only white space characters.

See Also

BufferAllAsync() BufferAllAsync() BufferAllAsync() BufferAllAsync()

Serialize the HttpMultipartFormDataContent into memory as an asynchronous operation.

public : IAsyncOperationWithProgress<ulong, ulong> BufferAllAsync()public IAsyncOperationWithProgress<ulong, ulong> BufferAllAsync()Public Function BufferAllAsync() As IAsyncOperationWithProgress( Of ulong, ulong )// You can use this method in JavaScript.
Returns

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 HttpMultipartFormDataContent class can be used to stream content that might be of arbitrary length. The BufferAllAsync method will fail if all of the HttpMultipartFormDataContent can't fit in memory.

Close() Close() Close() Close()

Closes the HttpMultipartFormDataContent instance and releases allocated resources.

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

Remarks

The Close method releases allocated resources used by the HttpMultipartFormDataContent instance. The Close method can manage the lifetime of system resources (memory for the HttpMultipartFormDataContent, 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 Close 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() Dispose()

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

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

First() First() First() First()

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

public : IIterator<IHttpContent> First()This member is not implemented in C#This member is not implemented in VB.Net// You can use this method in JavaScript.
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.

ReadAsBufferAsync() ReadAsBufferAsync() ReadAsBufferAsync() ReadAsBufferAsync()

Serialize the HttpMultipartFormDataContent 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 )// You can use this method in JavaScript.
Returns

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 HttpMultipartFormDataContent class can be used to stream content that might be of arbitrary length. The ReadAsBufferAsync method will fail if all of the HttpMultipartFormDataContent can't fit in memory since this method requires the entire content to be buffered in memory first.

ReadAsInputStreamAsync() ReadAsInputStreamAsync() ReadAsInputStreamAsync() ReadAsInputStreamAsync()

Serialize the HttpMultipartFormDataContent 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 )// You can use this method in JavaScript.
Returns

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

Serialize the HttpMultipartFormDataContent 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 )// You can use this method in JavaScript.
Returns

The object representing the asynchronous operation.

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 HttpMultipartFormDataContent class can be used to stream content that might be of arbitrary length. The ReadAsStringAsync method will fail if all of the HttpMultipartFormDataContent can't fit in memory since this method requires the entire content to be buffered in memory first.

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

Returns a string that represents the current HttpMultipartFormDataContent 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.

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

Determines whether the HttpMultipartFormDataContent 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// You can use this method in JavaScript.
Parameters
length
unsigned __int64 UInt64 UInt64 UInt64

The length in bytes of the HttpMultipartFormDataContent.

Returns
PlatForm::Boolean bool bool bool

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

Remarks

The TryComputeLength method calculates the content length for HTTP content in HttpMultipartFormDataContent. 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) WriteToStreamAsync(IOutputStream)

Write the HttpMultipartFormDataContent 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 )// You can use this method in JavaScript.
Parameters
outputStream
IOutputStream IOutputStream IOutputStream IOutputStream

The output stream to write to.

Returns

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