[Débutant] Aide objet en VB .NET
Bonjour,
Je développe actuellement un site en ASPX / VB .NET à titre didactif et je souhaiterais avoir quelques infos concernant la notion d'objet en VB .NET
Voici mon code qui me servirai à faire des requêtes :
J'ai un fichier ou je veut définir une classe: SQLOBJ.vb
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 30 31 32 33
|
Public Class SQLOBJ
Shared dr As System.Data.SqlClient.SqlDataReader
Shared dbConnection As New System.Data.SqlClient.SqlConnection(ConfigurationManager.ConnectionStrings("BaseSQL").ConnectionString)
Shared Function Requete(ByVal Sql As String) As Boolean
dbConnection.Open()
Dim cmd As New System.Data.SqlClient.SqlCommand(Sql, dbConnection)
'If Not dr.IsClosed Then
'dr.Close()
'End If
If Sql.Contains("SELECT") Then
dr = cmd.ExecuteReader()
ElseIf Sql.Contains("INSERT") Or Sql.Contains("DELETE") Or Sql.Contains("UPDATE") Then
cmd.ExecuteScalar()
dbConnection.Close()
End If
End Function
Shared Function Pickup(ByVal Index As String) As String
If dr(Index).ToString <> "" Then
Return dr(Index).ToString
Else
Return ""
End If
End Function
Shared Function Read() As Boolean
If Not dr.IsClosed And dr.Read() Then
Return True
Else
dbConnection.Close()
Return False
End If
End Function
End Class |
Dans mon code, je souhaite maintenant créé un objet de se type, donc je le déclare comme suite:
Code:
1 2 3 4 5 6 7 8
|
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim test As New SQLOBJ
test.Requete("SELECT [Nom] FROM [Clients]")
While test.Read()
Label1.Text &= test.Pickup("Nom") & "<br/>"
End While
End Sub |
Cela fonctionne mais je suis pas sur que si 2 personnes utilise en même temps mon SQLOBJ.vb il n'y est pas de conflit (dans le sens ou le datareader serait le même ?), vu que c'est une appli web.
J'aimerais avoir des critiques pour m'expliquer se qui ne va pas pourquoi et comment je pourrais faire cela.
J'espère que quelqu'un comprendra ou je veut en venir parce que je galère un peu à m'exprimer sur le sujet.
Merci ;)