none
Por que un Try Catch no captura todo los errores RRS feed

  • Pregunta

  • Buenas noches

    Tengo un Try Catch y no visualizo el mensaje de error de DirectoryNotFoundExeception con el Me.Response.Write("<script language='JavaScript'>window.alert('" & ex.message & " ')</script>"). Y con msgBox(ex.message) Si lo veo.

    El Try Catch si hace su trabajo.

    Gracias Srs. del foro.

    jueves, 28 de enero de 2016 7:05

Respuestas

  • Hola,

    El ejemplo de Leandro es de C# por eso índica this, en tu caso por el ejemplo que has puesto en el primer estás usando VB.Net y lo tienes que cambiar por Me .

    Además si no quieres que se corte el texto de la excepción cuando tienes un ' puedes reemplazarlo por comillas

    Quedaría así:

    dim mensaje as string = string.Format("alert('{0}')", ex.Message.replace("'",""""))
      
    ScriptManager.RegisterStartupScript(Me, Me.GetType, "alert", mensaje, true)

    • Marcado como respuesta Gilbertillo lunes, 1 de febrero de 2016 0:13
    domingo, 31 de enero de 2016 18:59

Todas las respuestas

  • Hola, puedes mostrarnos algo de código de cómo lo has implementado?

    Gracias!


    Si se solucionó tu consulta no olvides marcar la respuesta. Si te ayudó, vótala como útil. Saludos

    jueves, 28 de enero de 2016 7:50
    Moderador
  • hola

    Esta claro que el msgBox(ex.message) en un desarrollo web esta prohibido, este es un metodo de winforms  yno puede suarse en la web

    Tampoco recomiendo usar Response.Write() para mostrar mensajes

    Los mensajes deberias mostrarlos con ScriptManager

    string mensaje = string.Format("alert('{0}')", ex.Message);
      
    ScriptManager.RegisterStartupScript(this, this.GetType, "alert", mensaje, true);

    de esta forma es que debes mostrar los mensajes

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 28 de enero de 2016 11:34
  • hola

    Esta claro que el msgBox(ex.message) en un desarrollo web esta prohibido, este es un metodo de winforms  yno puede suarse en la web

    Tampoco recomiendo usar Response.Write() para mostrar mensajes

    Los mensajes deberias mostrarlos con ScriptManager

    string mensaje = string.Format("alert('{0}')", ex.Message);
      
    ScriptManager.RegisterStartupScript(this, this.GetType, "alert", mensaje, true);

    de esta forma es que debes mostrar los mensajes

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    Hola que tal Sr. Leandro

    this no esta declarado. Puede que este inaccesible debido a su nivel de protección.

    por que.?

    jueves, 28 de enero de 2016 15:57
  • >>this no esta declarado. Puede que este inaccesible debido a su nivel de protección.

    pero no defines ese codigo dentro de un evento en la misma web page?

    en ese codigo this seria el Page, los mensajes los deberias definir en el codigo .net de la paginas aspx

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    jueves, 28 de enero de 2016 17:06
  • >>this no esta declarado. Puede que este inaccesible debido a su nivel de protección.

    pero no defines ese codigo dentro de un evento en la misma web page?

    en ese codigo this seria el Page, los mensajes los deberias definir en el codigo .net de la paginas aspx

    saludos


    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    Hola Sr. Leandro

    Si lo defino dentro.

    Pero le comento veo que algunos errores no traen comilla por ejemplo este error que si lo despliega Referencia a objeto no establecida como instancia de un objeto.

    A diferencia de este error que no lo despliega por traer comillas No se puede encontrar el archivo 'C:\Archivo.ext'

    me parece que son las comillas que de alguna manera no dejan visualizar el error.

    Gracias espero me entienda.

    domingo, 31 de enero de 2016 18:23
  • Hola,

    El ejemplo de Leandro es de C# por eso índica this, en tu caso por el ejemplo que has puesto en el primer estás usando VB.Net y lo tienes que cambiar por Me .

    Además si no quieres que se corte el texto de la excepción cuando tienes un ' puedes reemplazarlo por comillas

    Quedaría así:

    dim mensaje as string = string.Format("alert('{0}')", ex.Message.replace("'",""""))
      
    ScriptManager.RegisterStartupScript(Me, Me.GetType, "alert", mensaje, true)

    • Marcado como respuesta Gilbertillo lunes, 1 de febrero de 2016 0:13
    domingo, 31 de enero de 2016 18:59