Catch... try block

Discussion in 'ASP .Net' started by JJ297, Oct 31, 2007.

  1. JJ297

    JJ297 Guest

    If I enter a new topic I don't get your topic was submitted...

    If I enter in a duplicate I do get teh duplicate error message. What
    am I doing wrong?


    Catch ex As Data.SqlClient.SqlException
    'Throw New ApplicationException("An error occurred while
    trying to insert the record")
    If TopicTxt.Text = "" Then
    Lbloutcome.Text = "Your topic was submitted into the
    database."
    Else
    Lbloutcome1.Text = "Duplicate entry topic already in
    database, topic was not submitted"
    End If
     
    JJ297, Oct 31, 2007
    #1
    1. Advertisements

  2. JJ297

    sloan Guest

    sloan, Oct 31, 2007
    #2
    1. Advertisements

  3. JJ297

    jx.su.go Guest


    the catch will harm the performance.
    judge the text of Lbloutcome before insert this data to database.
     
    jx.su.go, Oct 31, 2007
    #3
  4. First, I would design it so you do not have to "blow up" with a duplicate
    insert. I would, instead, use ExecuteNonQuery on a stored procedure and
    return 0 if there is already a record. In this way, you can return an
    "error" message without actually throwing an exception (which is expensive).

    As for why you are not getting the success message, the answer is simple:
    You are succeeding. Catch only works when you have an error. Since the data
    entered the database without problem, there was no error, and there is no
    message.

    I would redesign for success (the rule) rather than failure (the exception).
     
    Cowboy \(Gregory A. Beamer\), Oct 31, 2007
    #4
  5. JJ297

    JJ297 Guest

    Okay thanks!
     
    JJ297, Oct 31, 2007
    #5
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.