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
Nuova modale riconnessione Blazor
DevSecOps per .NET: dalla teoria alla pratica
Usare la parola chiave field per semplificare la scrittura di proprietà in C#
Impostare la content-visibility in CSS per ottimizare il rendering iniziale di una pagina
Creare espressioni riutilizzabili nelle query LINQ per Entity Framework
Usare i generics di C# con la clausola nameof in modo semplificato
Controllare la velocità di spostamento su una pagina HTML
Utilizzare ExecuteUpdate per aggiornare colonne JSON in Entity Framework
Ottimizzare i costi con Smart tier in Azure Blob Storage
Importare un servizio esterno in .NET Aspire
Eseguire i pre-commit hook di git con dependabot
Utilizzo delle stepped value functions nel CSS




