WebClient::UploadDataTaskAsync Method (String^, array<Byte>^)

.NET Framework (current version)

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Uploads a data buffer that contains a Byte array to the URI specified as an asynchronous operation using a task object.

Namespace:   System.Net
Assembly:  System (in System.dll)

[HostProtectionAttribute(SecurityAction::LinkDemand, ExternalThreading = true)]
Task<array<unsigned char>^>^ UploadDataTaskAsync(
	String^ address,
	array<unsigned char>^ data


Type: System::String^

The URI of the resource to receive the data.

Type: array<System::Byte>^

The data buffer to send to the resource.

Return Value

Type: System.Threading.Tasks::Task<array<Byte>^>^

Returns Task<TResult>.

The task object representing the asynchronous operation. The Result property on the task object returns a Byte array containing the body of the response received from the resource when the data buffer was uploaded.

Exception Condition

The address parameter is null.


The URI formed by combining BaseAddress and address is invalid.


An error occurred while opening the stream.


There was no response from the server hosting the resource.

This operation will not block. The returned Task<TResult> object will complete after the a data buffer has been uploaded to the resource.

This method sends a data buffer to a resource. The data buffer is sent asynchronously using thread resources that are automatically allocated from the thread pool. The data is not encoded.

Asynchronous operations that have not completed can be canceled using the CancelAsync method.

If the BaseAddress property is not an empty string (""), and address does not contain an absolute URI, address must be a relative URI that is combined with BaseAddress to form the absolute URI of the requested data. If the QueryString property is not an empty string, it is appended to address.

This method uses the STOR command to upload an FTP resource. For an HTTP resource, the POST method is used.


This member outputs trace information when you enable network tracing in your application. For more information, see Network Tracing in the .NET Framework.

.NET Framework
Available since 4.5
Return to top