How do I use try catch and finally block in vb.net?

15,053

It is very simple.

Just see the code below.

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

So you can use Try...Catch in your code as follows :

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
Share:
15,053
Shaikh Nadeem
Author by

Shaikh Nadeem

I am a learner of asp net with sql server in web development industry and pursuing training in a company

Updated on June 29, 2022

Comments

  • Shaikh Nadeem
    Shaikh Nadeem almost 2 years

    Below is the code in which I wanted to use try catch and finally block But I am unable to do the same , I am new in programming, Please help me to introduce try catch and finally block in the below code in vb.net, Also help to code for finally block where I will be checking whether connection is open or not , I Connection is open then it should be closed in finally block but after checking . If

    conditions..

    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
    
  • Pezzzz
    Pezzzz about 11 years
    @vishal Hi, I am not sure I see the difference between putting code within the Finally clause and after the End Try? Is there any chance you can try and elaborate on this for me please? Thanks!
  • Vishal
    Vishal about 11 years
    Generally if you write the code in finally block or after the end try doesn't make any difference. But if you want to close the try block unexpectedly, I mean If you use Exit Try in your Try or Catch block the Finally Block will not be executed. I may be wrong as I haven't tried it.