ฉันมีรหัสต่อไปนี้:
WebClient wc = new WebClient();
string result;
try
{
result = await wc.DownloadStringTaskAsync( new Uri( "http://badurl" ) );
}
catch
{
result = await wc.DownloadStringTaskAsync( new Uri( "http://fallbackurl" ) );
}
โดยทั่วไปฉันต้องการดาวน์โหลดจาก URL และเมื่อล้มเหลวโดยมีข้อยกเว้นฉันต้องการดาวน์โหลดจาก URL อื่น ทั้งสองเวลาไม่ตรงกันแน่นอน อย่างไรก็ตามรหัสไม่ได้รวบรวมเนื่องจาก
ข้อผิดพลาด CS1985: ไม่สามารถรอในเนื้อหาของประโยค catch
ตกลงห้ามไม่ว่าด้วยเหตุผลใด แต่รูปแบบรหัสที่ถูกต้องนี่คืออะไร
แก้ไข:
ข่าวดีก็คือว่าC # 6.0 มีแนวโน้มที่จะช่วยให้สายรอคอยทั้งในและในที่สุดก็จับบล็อก