Foros del Web » Programación para mayores de 30 ;) » .NET »

Cacturar errores en ASP.NET

Estas en el tema de Cacturar errores en ASP.NET en el foro de .NET en Foros del Web. No logro hacer que mi aplicación pueda cacturar los errores Tengo el Siguiente código: Código: Try Dim strSQL As String strSQL = "Insert Into RechazoCheque ...
  #1 (permalink)  
Antiguo 09/06/2004, 14:17
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 1 mes
Puntos: 7
Cacturar errores en ASP.NET

No logro hacer que mi aplicación pueda cacturar los errores

Tengo el Siguiente código:

Código:
Try
    Dim strSQL As String
    strSQL = "Insert Into RechazoCheque (clCodigo,rtCodigo,rcMonto,rcNoCheque,rcFecha," & _
    "rcComentario) values('" & Request.QueryString("Codigo") & "','" & _
    Request.QueryString("Ruta") & "'," & txtMonto.Text & "," & txtNoCheque.Text & ",'" & _
    Date.Today & "','" & txtComentario.Text & "')"

    Dim daRechazo As SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter()
    daRechazo.InsertCommand = New SqlClient.SqlCommand(strSQL, cnn)
    daRechazo.InsertCommand.CommandType = CommandType.Text
    cnn.Open()
    daRechazo.InsertCommand.ExecuteNonQuery()
    cnn.Close()

    Response.Redirect("ChequeRechazadoGrabado.aspx")
Catch ex As SyntaxErrorException
    lblErrorG.Text = ex.Message
End Try
Estoy insertando en la Base de Datos datos duplicados para que genera un error de PRIMARY KEY, pero en vez de desplegarme el error en el label, lo que hace es tirar el error en la página.

Que estoy haciendo mal?
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #2 (permalink)  
Antiguo 09/06/2004, 14:46
Avatar de SunDarK  
Fecha de Ingreso: diciembre-2003
Ubicación: Jerez de la Frontera
Mensajes: 1.193
Antigüedad: 20 años, 4 meses
Puntos: 8
Ummm prueba en vez de Catch ex As SyntaxErrorException a poner Catch ex As SQLException y si no va lo de lblErrorG.Text = ex.Message ponlo en el finally es decir
Catch ex As SyntaxErrorException

Finally
lblErrorG.Text = ex.Message
End Try

Saludos y suerte
  #3 (permalink)  
Antiguo 09/06/2004, 15:07
Avatar de RsOfT  
Fecha de Ingreso: marzo-2002
Ubicación: InterNET
Mensajes: 1.121
Antigüedad: 22 años, 1 mes
Puntos: 7
Ok, con SQLException. Pero le veo una gran desventaja a que sea por casos que cacture los errores.

Hay alguna instrucción que sea global para todo? si no es así, pues pienso que sería mejor seguir utilizando On error Goto ResumenError.

Que me dices al respecto?
__________________
.::RsOfT::.
--El que se aferra a lo conocido, nunca conocerá lo desconocido--
--Es intentando lo imposible como se realiza lo posible--
--Es de pésimo gusto contentarse con algo mediocre cuando lo excelente está a nuestro alcance--
  #4 (permalink)  
Antiguo 09/06/2004, 15:34
Avatar de SunDarK  
Fecha de Ingreso: diciembre-2003
Ubicación: Jerez de la Frontera
Mensajes: 1.193
Antigüedad: 20 años, 4 meses
Puntos: 8
Prueba Catch ex As Exception a ver si es global,un saludo

PD: On Error Goto etc etc hacen una programación "salteada",dificil de entender y poco recomendable,un saludo
  #5 (permalink)  
Antiguo 09/06/2004, 16:20
 
Fecha de Ingreso: abril-2003
Mensajes: 606
Antigüedad: 21 años
Puntos: 2
No se debe utilizar Try y Catch para casos esperados puesto que el uso de Try Catch pega en el performance. Por ejemplo el hecho de que una PK se duplique podría ser validado antes de insertar el registro.
  #6 (permalink)  
Antiguo 09/06/2004, 17:01
 
Fecha de Ingreso: mayo-2004
Ubicación: Guadalajara, Jalisco, México
Mensajes: 724
Antigüedad: 19 años, 11 meses
Puntos: 6
El Try y Catch el Dumanish Books lo usa.. y dejame decirte que el Duwamish Books está bastante rapido....

Aparte hace muchisimas validaciones...

Saludos.,..
  #7 (permalink)  
Antiguo 09/06/2004, 22:41
 
Fecha de Ingreso: abril-2003
Mensajes: 606
Antigüedad: 21 años
Puntos: 2
ja, y por que el borrego se avienta del puente tu te vas a aventar?. Si eres desarrollador avanzado en .Net deberías saber que como patrón de desarrollo no se debe utilizar Try- Catch para casos esperados:

http://msdn.microsoft.com/library/en...hapt05_topic24

Cita:
This section summarizes guidelines for you to review to ensure the appropriate use of exception handling:

Do not use exceptions to control application flow.
Use validation code to avoid unnecessary exceptions.
Use the finally block to ensure resources are released.
Replace Visual Basic .NET On Error Goto code with exception handling.
Do not catch exceptions that you cannot handle.
Be aware that rethrowing is expensive.
Preserve as much diagnostic information as possible in your exception handlers.
Use Performance Monitor to monitor CLR exceptions.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:37.