Ich versuche also, die besten Praktiken für meine Datenbankverbindung herauszufinden. Ich habe eine große .NET-GUI, die als das Frontend für die MySQL-Datenbank dient. Derzeit öffne ich eine Verbindung beim Laden der Anwendung und verwende sie für alle Interaktionen, die ich benötige. Die gesamte grafische Benutzeroberfläche ist jedoch single-threaded.
Da ich anfange, BackgroundWorker für große Abfragen und Ausführungen hinzuzufügen, mache ich mir Sorgen um meine offene Verbindung. Ich weiß zum Beispiel, dass ich nur einen dataReader gleichzeitig auf dieser Verbindung geöffnet haben kann. Mit mehreren Threads könnte der Benutzer versuchen, mehr als das zu instanziieren.
Welche Vor- und Nachteile hat es, eine Verbindung für die Anwendung offen zu halten, während für jede Interaktion eine neue Verbindung geöffnet wird?
Was sind einige gängige Entwurfsmuster dafür?
Danke -
Jonathan