My question is correct or incorrect I don\'t know, but I would like to know if is it possible to return the value of UploadStringAsync() of post methods using WebClient?
<From .NET 4.5 we can use UploadStringTaskAsync
to retrieve return value directly.
string rspBody = await client.UploadStringTaskAsync(uri, "POST");
ref: MSDN
There is nothing to return from that function. You've already set up an event handler for UploadStringCompleted
, you can get the result of the action in the handler.
This is the signature:
public delegate void UploadStringCompletedEventHandler(
Object sender,
UploadStringCompletedEventArgs e
)
The second parameter has the information you need: UploadStringCompletedEventArgs, the Result
property contains the server's response.
You can use UploadStringCompleted event and get result in event handler. Once upload completes (failed or succeed) event is raised.
Attach
client.UploadStringCompleted
+= new UploadStringCompletedEventHandler (UploadStringCallback2);
Use:
void UploadStringCallback2(object sender, UploadStringCompletedEventArgs e)
{
//e.Result use it
}
If you want to return result of the upload you can wait for event to be raised like here
using AutoResetEvent