Bonjour à toute et à tous.
Je me permet de poster un discutions pour éclairer ma lanterne.
Je préviens, il y a pas de vrai problème en sois. C'est juste une question purement de connaissance.
Donc je m'explique. J'ai dans l'idée de faire un projet de création de compte avec stockage des différents éléments composant le compte dans une base de donnée.
Pour bien organiser mon code, je crée un class.vb pour y mettre tout mes lignes qui pourrait être récurrente.
Ensuite, je crée une form1 avec un bouton qui change son texte quand je suis connecté ou pas.
Donc ci-dessus ma class.vb ou j'ai la structure de mon code.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
34
35
36 Imports System.Data.SqlClient Public Class Appel_de_code Dim cnString As String = "Data Source=nom de mon serveur;Initial Catalog=Utilisateur;Integrated Security=True;Pooling=False" Dim cn As SqlConnection Public Sub Connection_serveur() Dim a As New Listing_d_employer If a.Button1.Text = "Se connecter" Then cn = New SqlConnection(cnString) Try If cn.State = ConnectionState.Closed Then cn.Open() a.Button1.Text = "Se deconnecter" End If Catch ex As Exception MessageBox.Show("Impossible de se connecter à la base de donnée !!!") End Try Else cn.Close() a.Button1.Text = "Se connecter" End If End Sub
Et ci-dessus mon événement pour le clik dans ma form1.vb.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Imports System.Data.SqlClient Public Class Listing_d_employer Dim a As New Appel_de_code Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click a.Connection_serveur() End Sub End Class
Donc ma question est la suivant:
Quand je place le code suivant dans l'événement :
Cela fonctionne. Mais quand je fait appel à la sub à partir de ma class.vb pour l'événement dans la form1, cela ne fonctionne pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
34
35
36
37 Imports System.Data.SqlClient Public Class Listing_d_employer Private cnstring As String = "Data Source=nom de mon serveur;Initial Catalog=Utilisateur;Integrated Security=True;Pooling=False" Private cn As SqlConnection Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click If Button1.Text = "Se connecter" Then cn = New SqlConnection(cnString) Try If cn.State = ConnectionState.Closed Then cn.Open() Button1.Text = "Se deconnecter" End If Catch ex As Exception MessageBox.Show("Impossible de se connecter à la base de donnée !!!") End Try Else cn.Close() Button1.Text = "Se connecter" End If End Sub End Class
Exemple du code en dessous:
Du coup, j'aimerais savoir pourquoi?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Imports System.Data.SqlClient Public Class Listing_d_employer Private cnstring As String = "Data Source=nom de mon serveur;Initial Catalog=Utilisateur;Integrated Security=True;Pooling=False" Private cn As SqlConnection Dim a As New Appel_de_code Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click a.Connection_serveur() End Sub End Class
Personnellement, comme je vous l'ai dit, cela est pas vraiment un problème vu que j'arrive à mes fins. Mais je vous avoue que cela serais plus agréable d'avoir un class.vb où je mettrais tout mes procédures, instruction ect, pour avoir un code structuré et ainsi aérer ce dernier pour le rendre lisible pour moi et les autres éventuellement.
De plus, je préviens, je suis un amateur éclairé et le code que j''ai écris net pas de moi. Merci à ProjetX7 et à tout les autres de prendre le temps nous instruire.
Merci d'avance de votre aide et au plaisir de vous lire.
Partager