Connexion base de données avec singleton
Bonjour à tous,
Je voudrais faire en sorte que mon application n'exécute
Code:
New SqlConnection(connectString)
qu'une seule fois.
De ce fait, j'ai crée une classe LinkDataBase pour avoir qu'une seule connexion au serveur (singleton) :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
|
Public Class LinkDataBase
Private connectString As String = "..."
Private Shared instance As LinkDataBase = Nothing
Private Sub New()
Dim connection As SqlConnection = New SqlConnection(connectString)
connection.Open()
If Not connection.State = ConnectionState.Open Then
MsgBox("Server connection failure ", MsgBoxStyle.OkOnly, "Status")
End If
End Sub
Public Shared Function GetInstance() As LinkDataBase
If instance Is Nothing Then
instance = New LinkDataBase()
End If
Return instance
End Function
End Class |
De ce côté la, pas de problème. Cependant, quand je veux faire une SqlCommand, le second paramètre doit être de type SqlConnection sauf que quand je fais :
Code:
Dim insert As SqlCommand = New SqlCommand("INSERT INTO ..", LinkDataBase.GetInstance())
il me dit qu'une valeur type LinkDataBase ne peut être convertie en SqlConnection (logique).
Quelqu’un pourrait me dire comment palier ce problème ?
Merci,
Jah