Nelle precedenti versioni di C# è possibile utilizzare l'istruzione await nel blocco try, ma non è possibile utilizzare la stessa istruzione nei blocchi catch e finally. Questa limitazione è stata volutamente inserita perchè il compilatore non riesce a emettere il codice IL necessario. Questa limitazione è stata rimossa in C# 6, quindi diventa possibile scrivere il seguente codice:
public async Task MetodoAsync(){ try { await EseguiMetodoAsync(); } catch { await LogAsync(); } finally { await AltroMetodoAsync(); } }
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Creare alias per tipi generici e tuple in C#
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Verificare la provenienza di un commit tramite le GitHub Actions
Eseguire attività con Azure Container Jobs
Effettuare il deploy di immagini solo da container registry approvati in Kubernetes
Eseguire una GroupBy per entity in Entity Framework
Eseguire le GitHub Actions offline
Recuperare un elemento inserito nella cache del browser tramite API JavaScript
Creazione di plugin per Tailwind CSS: espandere le funzionalità del framework dinamicamente
Usare il versioning con i controller di ASP.NET Core Web API
Registrare servizi multipli tramite chiavi in ASP.NET Core 8
Implementare il throttling in ASP.NET Core