如何在vb.net中使用try-catch和finally block



下面是我想在其中使用try-catch和finally block的代码,但我无法做到这一点,我是编程新手,请帮助我在vb.net中的下面的代码中介绍try-catch and finally block,也帮助我为finally block编写代码,我将在其中检查连接是否打开,I连接是打开的,那么它应该在finally块中关闭,但经过检查。如果

条件。。

else
    'Try
        con.Open()
        adp = New OleDbDataAdapter("select * from Login ", con)
        adp.Fill(dt, "Login")
        Dim i As Integer
        For i = 0 To dt.Tables(0).Rows.Count - 1
            If (cbType.Text = dt.Tables(0).Rows(i).Item(1) And txtUname.Text = dt.Tables(0).Rows(i).Item(2) And txtPass.Text = dt.Tables(0).Rows(i).Item(3)) Then
                MDIParent1.Show()

                Exit Sub

            End If
            '                Catch ex As Exception

        Next
        MsgBox("You Are Not A Valid User!!", MsgBoxStyle.Information)
    End If

它非常简单。

请参阅下面的代码。

Try
    'In this block your program will try to execute your code.
    'If it catches any runtime error it will go to the Catch Block straight away without executing the next code in your Try Block.
    'If there are no errors then Finally Block will be executed after Try Block. Catch Block will be skipped.
Catch
    'It will display the errors here.
    'So you can use Catch ex as exception.
    'If you want to see the errors in Messagebox you can write the below line.
    'MessageBox.Show(ex.Message)
Finally
    'If your program finds errors or not this block will be executed always.
End Try

所以你可以使用Try。。。捕获您的代码如下:

Dim ValidUser as Boolean = False
Try
        con.Open()
        adp = New OleDbDataAdapter("select * from Login ", con)
        adp.Fill(dt, "Login")
        Dim i As Integer
        For i = 0 To dt.Tables(0).Rows.Count - 1
            If (cbType.Text = dt.Tables(0).Rows(i).Item(1) And txtUname.Text = dt.Tables(0).Rows(i).Item(2) And txtPass.Text = dt.Tables(0).Rows(i).Item(3)) Then
                ValidUser = true

                Exit For

            End If
        Next
        If ValidUser = True
             MDIParent1.Show()
        Else
             MsgBox("You Are Not A Valid User!!", MsgBoxStyle.Information)
        End If
Catch ex As Exception
    MessageBox.Show(ex.Message)
Finally
    if con.State = ConnectionState.Open then
        con.close()
    End If
    ValidUser = False
End Try

最新更新