J'ai le code suivant:
WebClient wc = new WebClient();
string result;
try
{
result = await wc.DownloadStringTaskAsync( new Uri( "http://badurl" ) );
}
catch
{
result = await wc.DownloadStringTaskAsync( new Uri( "http://fallbackurl" ) );
}
Fondamentalement, je veux télécharger à partir d'une URL et en cas d'échec avec une exception, je veux télécharger à partir d'une autre URL. Les deux temps asynchrone bien sûr. Cependant, le code ne se compile pas, à cause de
erreur CS1985: impossible d'attendre dans le corps d'une clause catch
OK, c'est interdit pour une raison quelconque, mais quel est le modèle de code correct ici?
ÉDITER:
La bonne nouvelle est que C # 6.0 autorisera probablement les appels d'attente à la fois dans les blocs catch et finally .