我需要從Https源文件下載文件。 我會做這個asynchron這樣的(作品至今):完成後等待類方法完成C#
void doChecksbeforDownload(){
//Do some Checks
DownloadFileAsync();
}
void DownloadFileAsync(){
...
...
this.client.UploadStringCompleted += new UploadStringCompletedEventHandler(client_UploadStringCompleted);
this.client.Headers["Content-Type"] = "application/x-www-form-urlencoded";
this.client.UploadStringAsync(new Uri(url), "POST", PostParameter);
...
...
}
,並調用client_UploadStringCompleted()方法:
void client_UploadStringCompleted(object sender, UploadStringCompletedEventArgs e)
{
//Do Check here
}
到目前爲止好。現在我把所有這一切在一類「功能」並調用該方法是這樣的:
Functions f = new Functions();
f.doChecksbeforeDownload();
我想doChecksbeforeDownload()等到clientUloadStringCompleted完成。
我該如何告訴doChecksbeforeDownload等待,直到DownloadFilesAsync中的異步調用完成並準備就緒。
- 呼叫doChecksbeforeDownload()
- ChecksbeforeDownload() - > DownloadFileAsync()
- ChecksbeforeDownload() - >等待.......
- DownloadFileAsync() - > Completet &就緒
- ChecksbeforeDownload() - >返回FOO爲主類
是否有任何最佳實踐/示例來實現這一目標?我堅持這一點。
在此先感謝
漢納斯
這是IT!謝謝 – 2011-06-17 07:28:37