Tôi có mã sau:
WebClient wc = new WebClient();
string result;
try
{
result = await wc.DownloadStringTaskAsync( new Uri( "http://badurl" ) );
}
catch
{
result = await wc.DownloadStringTaskAsync( new Uri( "http://fallbackurl" ) );
}
Về cơ bản, tôi muốn tải xuống từ một URL và khi nó không thành công với một ngoại lệ, tôi muốn tải xuống từ một URL khác. Tất nhiên cả hai thời gian đều không đồng bộ. Tuy nhiên, mã không biên dịch, vì
lỗi CS1985: Không thể đợi trong phần nội dung của mệnh đề bắt
OK, nó bị cấm vì bất kỳ lý do gì nhưng mẫu mã chính xác ở đây là gì?
BIÊN TẬP:
Tin tốt là C # 6.0 có thể sẽ cho phép các cuộc gọi chờ đợi cả trong các khối bắt và cuối cùng .