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
Eseguire query in contemporanea con EF
Il nuovo controllo Range di Blazor 9
Gestione degli eventi nei Web component HTML
Gestire il routing HTTP in Azure Container App
Scrivere selettori CSS più semplici ed efficienti con :is()
Documentare i servizi REST con Swagger e OpenAPI con .NET 9
Inference di dati strutturati da testo con Semantic Kernel e ASP.NET Core Web API
Popolare una classe a partire dal testo, con Semantic Kernel e ASP.NET Core Web API
Utilizzare DeepSeek R1 con Azure AI
Fornire parametri ad un Web component HTML
Aggiornare a .NET 9 su Azure App Service
Implementare il throttle in JavaScript