HttpMultipartContent HttpMultipartContent HttpMultipartContent HttpMultipartContent Class

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

Syntax

Declaration

public sealed class HttpMultipartContentpublic sealed class HttpMultipartContentPublic NotInheritable Class HttpMultipartContentpublic sealed class HttpMultipartContent

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 summary

Initializes a new instance of the HttpMultipartContent class.

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

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

Properties summary

Get a collection of content headers set on the HttpMultipartContent.

Methods summary

Add HTTP content to the HttpMultipartContent instance.

Serialize the HttpMultipartContent into memory as an asynchronous operation.

Closes the HttpMultipartContent instance and releases allocated resources.

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

Serialize the HttpMultipartContent to a buffer as an asynchronous operation.

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

Serialize the HttpMultipartContent to a String as an asynchronous operation.

Returns a string that represents the current HttpMultipartContent object.

Determines whether the HttpMultipartContent has a valid length in bytes.

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

Constructors

  • HttpMultipartContent()
    HttpMultipartContent()
    HttpMultipartContent()
    HttpMultipartContent()

    Initializes a new instance of the HttpMultipartContent class.

    public HttpMultipartContent()public New()Public Sub New()public HttpMultipartContent()
  • HttpMultipartContent(String)
    HttpMultipartContent(String)
    HttpMultipartContent(String)
    HttpMultipartContent(String)

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

    public HttpMultipartContent(String subtype)public New(String subtype)Public Sub New(subtype As String)public HttpMultipartContent(String subtype)

    Parameters

    • subtype
      System.String
      System.String
      System.String
      System.String

      The MIME subtype of the multipart content.

  • HttpMultipartContent(String, String)
    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(String subtype, String boundary)public New(String subtype, String boundary)Public Sub New(subtype As String, boundary As String)public HttpMultipartContent(String subtype, String boundary)

    Parameters

    • subtype
      System.String
      System.String
      System.String
      System.String

      The MIME subtype of the multipart content.

    • boundary
      System.String
      System.String
      System.String
      System.String

      The boundary string for the multipart content.

Properties

Methods

  • Add(IHttpContent)
    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 voidpublic void Add(IHttpContent content)

    Parameters

  • BufferAllAsync()
    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 )public IAsyncOperationWithProgress<ulong, ulong> BufferAllAsync()

    Returns

    • The object that represents the asynchronous operation.

    Remarks

    This operation will not block. The returned IAsyncOperationWithProgress<TResult, TProgress> 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()
    Close()

    Closes the HttpMultipartContent instance and releases allocated resources.

    public void Close()public void Close()Public Function Close() As voidpublic void Close()

    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.

  • First()
    First()
    First()
    First()

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

    public IIterator<IHttpContent> First()public IIterator<IHttpContent> First()Public Function First() As IIterator( Of IHttpContent )public IIterator<IHttpContent> First()

    Returns

  • ReadAsBufferAsync()
    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 )public IAsyncOperationWithProgress<IBuffer, ulong> ReadAsBufferAsync()

    Returns

    • The object representing the asynchronous operation.

    Remarks

    This operation will not block. The returned IAsyncOperationWithProgress<TResult, TProgress> 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()
    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 )public IAsyncOperationWithProgress<IInputStream, ulong> ReadAsInputStreamAsync()

    Returns

    • The object representing the asynchronous operation.

    Remarks

    This operation will not block. The returned IAsyncOperationWithProgress<TResult, TProgress> object will complete after all of the content has been written to the stream.

  • ReadAsStringAsync()
    ReadAsStringAsync()
    ReadAsStringAsync()
    ReadAsStringAsync()

    Serialize the HttpMultipartContent to a String as an asynchronous operation.

    public IAsyncOperationWithProgress<string, ulong> ReadAsStringAsync()public IAsyncOperationWithProgress<string, ulong> ReadAsStringAsync()Public Function ReadAsStringAsync() As IAsyncOperationWithProgress( Of string, ulong )public IAsyncOperationWithProgress<string, ulong> ReadAsStringAsync()

    Returns

    • The object representing the asynchronous operation.

    Remarks

    This operation will not block. The returned IAsyncOperationWithProgress<TResult, TProgress> 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()
    ToString()

    Returns a string that represents the current HttpMultipartContent object.

    public string ToString()public string ToString()Public Function ToString() As stringpublic string ToString()

    Returns

    • string
      string
      string
      string

      A string that represents the current object.

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

    Determines whether the HttpMultipartContent has a valid length in bytes.

    public bool TryComputeLength(UInt64 length)public bool TryComputeLength(UInt64 length)Public Function TryComputeLength(length As UInt64) As boolpublic bool TryComputeLength(UInt64 length)

    Parameters

    • length
      System.UInt64
      System.UInt64
      System.UInt64
      System.UInt64

      The length in bytes of the HttpMultipartContent.

    Returns

    • bool
      bool
      bool
      bool

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

    Remarks

    The TryComputeLength(UInt64) 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)
    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 )public IAsyncOperationWithProgress<ulong, ulong> WriteToStreamAsync(IOutputStream outputStream)

    Parameters

    Returns

    • The object that represents the asynchronous operation.

    Remarks

    This operation will not block. The returned IAsyncOperationWithProgress<TResult, TProgress> object will complete after all of the content has been written to the output stream.

Device family

Windows 10 (introduced v10.0.10240.0)

API contract

Windows.Foundation.UniversalApiContract (introduced v1)

Attributes

Windows.Foundation.Metadata.ActivatableAttribute
Windows.Foundation.Metadata.ActivatableAttribute
Windows.Foundation.Metadata.ContractVersionAttribute
Windows.Foundation.Metadata.DualApiPartitionAttribute
Windows.Foundation.Metadata.MarshalingBehaviorAttribute
Windows.Foundation.Metadata.ThreadingAttribute

Details

Assembly

Windows.Web.Http.dll