Heim >Backend-Entwicklung >C++ >Warum werden meine Datenbankänderungen nicht nach dem Schließen meiner C# -Anwendung gespeichert?
c# Datenbank Persistenzprobleme: Warum Veränderungen verschwinden
Viele C# -Anwendungen interagieren mit Datenbanken und geben Daten ein und abrufen. Veränderte Veränderungen verschwinden jedoch manchmal unerwartet, eine frustrierende Herausforderung für Debugging. Auch wenn Insertion -Abfragen erfolgreich erscheinen, könnten die neuen Daten nach dem Schließen der Anwendung nicht vorhanden sein.
Verständnis des Problems
Dies stammt häufig aus der Verwendung des Platzhalters |DataDirectory|
in der Verbindungszeichenfolge. Während des Debuggens befindet sich die Datenbank im Ordner binDebug
, aber der Server Explorer von Visual Studio stellt häufig eine separate Datenbankkopie im Stammverzeichnis des Projekts her.
Änderungen beim Debuggen wirken sich auf die binDebug
-Datenbank aus. Der Server Explorer zeigt jedoch die nicht modifizierte Projektbank der Projektordner an. Wenn die Eigenschaft der Datenbank "Copy to Output Directory" auf "Always Copy" festgelegt ist, wird die binDebug
-Datenbank nach jedem Build überschrieben, wobei alle Änderungen verloren gehen.
Auflösen des Problems
Um dies zu korrigieren, ändern Sie die Eigenschaft der Datenbank "Kopieren in das Ausgabeverzeichnis" in "Kopieren Sie, wenn neuer" oder "niemals kopieren". Alternativ konfigurieren Sie die Verbindungszeichenfolge von Server Explorer, um die binDebug
-Datenbank zu zielen.
Best Practices
Das obige ist der detaillierte Inhalt vonWarum werden meine Datenbankänderungen nicht nach dem Schließen meiner C# -Anwendung gespeichert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!