2012-07-22 3 views
1

J'ai un problème avec une connexion ... Eh bien laissez-moi vous expliquer mon problème, le problème est que je veux créer une connexion avec des restrictions, j'ai une zone de texte avec la propriété source de liaison modifiée à ma base de données. Mais quand je tape quelque chose qui est pas dans la base du programme se fige, je vais poster mon code, espérons que vous pouvez me aider (=Problème Connexion vb.Net?

Private Sub KryptonButton1_Click(ByVal sender As System.Object, 
           ByVal e As System.EventArgs) 
      Handles KryptonButton1.Click 

    If txtUser.Text <> UserTextBox.Text Then 
     While txtUser.Text <> UserTextBox.Text 
      Me.UsuarioContraseñaBindingSource.MoveNext() 
     End While 
     If txtUser.Text = UserTextBox.Text Then 
      KryptonMessageBox.Show("Welcome") 
     Else 
      KryptonMessageBox.Show("Error") 
     End If 
    End If 

End Sub 

Répondre

2

Jetez un oeil à la boucle dans votre code et son état de sortie Dans quelles circonstances la boucle sort-elle?

En général, vous avez besoin de jouer et de couvrir tous les scénarios, mais vous connaissez déjà le scénario ici: votre entrée de l'utilisateur ne se trouve pas dans la base de données et l'application se fige. fournir de nombreux conseils pour trouver la cause

+0

Alors ... vous encre que je pourrais utiliser la sortie While et mettre et si? Vous pensez que ça marche? – DFabeiro

0
Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click 
     If txt_user.Text <> vbNullString And txt_pass.Text <> vbNullString Then 
      Dim chkcmd As New SqlCommand("select * from users where username = '" & txt_user.Text & "' and password = '" & txt_pass.Text & "'", con) 
      If con.State = ConnectionState.Open Then con.Close() 
      con.Open() 
      Dim chkval As SqlDataReader = chkcmd.ExecuteReader 
      If chkval.Read = True Then 
       Me.Hide() 
       Form2.Show() 
      Else 
       MsgBox("Invalid key to login!", MsgBoxStyle.Exclamation, "Message") 
       txt_pass.Clear() 
       txt_user.Clear() 
       txt_user.Select() 
      End If 
      con.Close() 
     End If 
    End Sub