Je développe une application C# dont le backend est sqlite. Dans mon application, j'ai un bouton pour nettoyer la base de données (en supprimant le fichier .db et en le créant à nouveau avec quelques données initiales). Parfois, lorsque j'essaie de supprimer la base de données, elle ne peut pas être supprimée car elle est utilisée par un autre processus. Avant de le supprimer, j'utilise une connexion étroite, élimine et efface les fonctions de la piscine. Même alors, il jette la même exception. Voici mon code:Supprimer le fichier sqlite db
string targetDataBaseFilePath = Path.Combine(dataDirectoryPath, "local.db");
ThingzDatabase.Create(targetDataBaseFilePath, "touchdb");
Dans la fonction de création je définis le code suivant, d'où je reçois l'erreur:
if (File.Exists(DatabaseFileName))
{
try
{
ThingzDatabase.localdb.conn.Close();
ThingzDatabase.localdb.conn.Dispose();
SQLiteConnection.ClearAllPools();
}
catch (Exception)
{
}
File.Delete(DatabaseFileName); //error throws from here.
}
Comment puis-je éviter l'erreur d'être jeté?
Je vais volontiers écho! –