WebClient.UploadDataAsync Method

Definition

Uploads a data buffer to a resource identified by a URI. This method does not block the calling thread.

Overloads

UploadDataAsync(Uri, String, Byte[])

Uploads a data buffer to a resource identified by a URI, using the specified method. This method does not block the calling thread.

UploadDataAsync(Uri, String, Byte[], Object)

Uploads a data buffer to a resource identified by a URI, using the specified method and identifying token.

UploadDataAsync(Uri, Byte[])

Uploads a data buffer to a resource identified by a URI, using the POST method. This method does not block the calling thread.

UploadDataAsync(Uri, String, Byte[])

Uploads a data buffer to a resource identified by a URI, using the specified method. This method does not block the calling thread.

public:
 void UploadDataAsync(Uri ^ address, System::String ^ method, cli::array <System::Byte> ^ data);
public void UploadDataAsync (Uri address, string? method, byte[] data);
public void UploadDataAsync (Uri address, string method, byte[] data);
member this.UploadDataAsync : Uri * string * byte[] -> unit
Public Sub UploadDataAsync (address As Uri, method As String, data As Byte())

Parameters

address
Uri

The URI of the resource to receive the data.

method
String

The method used to send the data to the resource. If null, the default is POST for http and STOR for ftp.

data
Byte[]

The data buffer to send to the resource.

Exceptions

The address parameter is null.

The URI formed by combining BaseAddress and address is invalid.

-or-

An error occurred while opening the stream.

-or-

There was no response from the server hosting the resource.

Remarks

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. To receive notification when the data upload completes, add an event handler to the UploadDataCompleted event.

This method does not block the calling thread while the data is being sent. To send data and block while waiting for the server's response, use one of the UploadData methods.

In .NET Framework and .NET Core 1.0, you can cancel asynchronous operations that have not completed by calling 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.

Note

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

This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as ArgumentException, are still thrown synchronously. For the stored exceptions, see the exceptions thrown by UploadData(Uri, String, Byte[]).

Applies to

UploadDataAsync(Uri, String, Byte[], Object)

Uploads a data buffer to a resource identified by a URI, using the specified method and identifying token.

public:
 void UploadDataAsync(Uri ^ address, System::String ^ method, cli::array <System::Byte> ^ data, System::Object ^ userToken);
public void UploadDataAsync (Uri address, string? method, byte[] data, object? userToken);
public void UploadDataAsync (Uri address, string method, byte[] data, object userToken);
member this.UploadDataAsync : Uri * string * byte[] * obj -> unit
Public Sub UploadDataAsync (address As Uri, method As String, data As Byte(), userToken As Object)

Parameters

address
Uri

The URI of the resource to receive the data.

method
String

The method used to send the data to the resource. If null, the default is POST for http and STOR for ftp.

data
Byte[]

The data buffer to send to the resource.

userToken
Object

A user-defined object that is passed to the method invoked when the asynchronous operation completes.

Exceptions

The address parameter is null.

The URI formed by combining BaseAddress and address is invalid.

-or-

An error occurred while opening the stream.

-or-

There was no response from the server hosting the resource.

Remarks

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. To receive notification when the data upload completes, add an event handler to the UploadDataCompleted event.

This method does not block the calling thread while the data is being sent. To send data and block while waiting for the server's response, use one of the UploadData methods.

In .NET Framework and .NET Core 1.0, you can cancel asynchronous operations that have not completed by calling 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.

Note

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

Applies to

UploadDataAsync(Uri, Byte[])

Uploads a data buffer to a resource identified by a URI, using the POST method. This method does not block the calling thread.

public:
 void UploadDataAsync(Uri ^ address, cli::array <System::Byte> ^ data);
public void UploadDataAsync (Uri address, byte[] data);
member this.UploadDataAsync : Uri * byte[] -> unit
Public Sub UploadDataAsync (address As Uri, data As Byte())

Parameters

address
Uri

The URI of the resource to receive the data.

data
Byte[]

The data buffer to send to the resource.

Exceptions

The address parameter is null.

The URI formed by combining BaseAddress and address is invalid.

-or-

An error occurred while opening the stream.

-or-

There was no response from the server hosting the resource.

Remarks

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. To receive notification when the data upload completes, add an event handler to the UploadDataCompleted event.

This method does not block the calling thread while the data is being sent. To send data and block while waiting for the server's response, use one of the UploadData methods.

In .NET Framework and .NET Core 1.0, you can cancel asynchronous operations that have not completed by calling 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.

Note

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

This method stores in the task it returns all non-usage exceptions that the method's synchronous counterpart can throw. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as ArgumentException, are still thrown synchronously. For the stored exceptions, see the exceptions thrown by UploadData(Uri, Byte[]).

Applies to