Wenn Sie eine SqlConnection vor dem Ausgeben von Abfragen öffnen müssen, können Sie einfach alle nicht geöffneten ConnectionStates auf die gleiche Weise behandeln? Zum Beispiel:Umgang mit verschiedenen ConnectionStates vor dem Öffnen von SqlConnection
if (connection.State != ConnectionState.Open)
{
connection.Open();
}
Ich habe irgendwo gelesen, dass für ConnectionState.Broken die Verbindung geschlossen werden muss, bevor seine Wiedereröffnung. Hat jemand Erfahrung damit? Danke
Sie sollten nicht für die GC warten zu schließen und eine Verbindung zu entsorgen. Sie sollten eine Verbindung explizit schließen, sobald Sie damit fertig sind. – ddc0660
Die using-Anweisung stellt sicher, dass die Verbindung geschlossen ist, selbst wenn eine Ausnahme ausgelöst wird. Es wartet nicht darauf, dass der GC es schließt. – Joe
Dieses Using-Muster ist, wie alle Datenzugriff aussehen sollte. Sie werden niemals Verbindungen auf diese Weise verlieren. Joe, ich würde auch "using (SqlCommand command ..." innerhalb der Verwendung von SqlConnection hinzufügen und eine Konstante für die Abfragezeichenfolge empfehlen, um sicherzustellen, dass sie immer aus demselben Pool kommt. –