Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

Can TaskCompletionSource be used with Backup class?

Ouverte
#161 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
4/5
Temps estimé
3-5 jours
Accessibilité débutants
35/100
Type d'issue
Fonctionnalité
Clarté
Plutôt claire
Activité
À l'abandon
Stack technique
csharp, sql
Domaine
databases

Piste de recherche

Commencez par examiner Backup.SqlBackupAsync(Server), Backup.Wait() et les événements Complete, Information et PercentageComplete décrits dans l’issue. Déterminez comment la fin et les erreurs sont signalées, puis vérifiez que l’approche awaitable proposée évite une attente bloquante et signale de manière fiable le résultat de la sauvegarde.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

I would like a method to call Backup.SqlBackupAsync and return a TaskCompletionSource.Task in order to await the completion of the Backup process.

Currently, the Backup.Wait() method appears to be the only definitive way to know when a Backup.SqlBackupAsync(Server) call has completed entirely. Is there another way that does not require calling a blocking method?

The Complete event is unreliable because if there's an error the Complete event is never raised.

The Information event is unreliable because there's no way to know when the "final" Information event has been raised.

The PercentageComplete event is unreliable because, at least in some cases, an error causes the event to not be raised at all.

My current methodology is to call Backup.Wait() via Task.Run() and return that Task. This is functional, but not ideal, because it's creating a new thread whose entire job is to wait.

Langage dominant
C#
Étoiles
143
Forks
28
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Nous n'avons pas encore vérifié les fichiers d'installation de ce projet. Commencez par son README, et consultez notre guide de la première contribution pour les étapes générales.

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de microsoft/sqlmanagementobjects

Toutes les issues de microsoft/sqlmanagementobjects

Issues similaires

Plus d'issues C#

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.