Heim >Backend-Entwicklung >C++ >Warum verschwinden meine Datenbankänderungen nach dem Schließen meiner C# -Anwendung?
Dieser Artikel befasst sich mit einem gemeinsamen Problem: Datenbankänderungen, die in einer C# -Konsole -Anwendung vorgenommen wurden, verschwinden nach dem Schließen der Anwendung, obwohl sie während des Debuggens korrekt erscheinen. Untersuchen wir die Ursache und Lösung.
Das Problem:
neu hinzugefügte Datenbankdatensätze verschwinden, wenn eine C# -Konsole -Anwendung endet, obwohl er während der Debugging -Sitzung korrekt angezeigt wird.
Die Untersuchung:
Dieses Problem tritt häufig bei der Verwendung von SQL Server Compact Edition 4 auf. Die Verbindungszeichenfolge verwendet normalerweise "| Datadirectory |," die Datenbank im Bindebug -Ordner der Anwendung während des Debuggens platziert. Die Anwendung verbindet und aktualisiert diese Datenbank erfolgreich. Der Server Explorer von Visual Studio zeigt jedoch möglicherweise eine andere Datenbankdatei im Stammordner des Projekts an. Dies liegt daran, dass der Server -Explorer eine separate Verbindungszeichenfolge verwendet.
Die Lösung:
Das Kernproblem liegt in der Verwendung von "| Datadirectory |." Während die Anwendung die Datenbank im Debug -Ordner aktualisiert, überschreibt Visual Studio diese Datenbank mit der Kopie aus dem Projektordner beim Neustart. Dies macht die Veränderungen effektiv rückgängig.
Um dies zu beheben, passen Sie die Eigenschaft "Kopieren Sie das Ausgabeverzeichnis kopieren" für die Datenbankdatei in Ihren Projekteinstellungen an. Stellen Sie es entweder auf "Kopieren, wenn neuer" oder "niemals kopieren". Dies verhindert, dass Visual Studio die Datenbank im Debug -Ordner ersetzt.
Ein anderer Ansatz besteht darin, zwei Verbindungen im Server -Explorer zu erstellen: eine, die auf die Datenbank des Projektordners und eine zur Datenbank des Debuggers hinweist. Auf diese Weise können Sie die von Ihrem Code vorgenommenen Änderungen beobachten, ohne die Bereitstellungsdatenbank zu beeinflussen.
Durch die Implementierung dieser Lösungen können Sie sicherstellen, dass sich die Datenbank nach der Anwendungsschließung ändert und Ihre Debugging -Beobachtungen den Status der Datenbank genau widerspiegeln.
Das obige ist der detaillierte Inhalt vonWarum verschwinden meine Datenbankänderungen nach dem Schließen meiner C# -Anwendung?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!