Foros del Web » Programando para Internet » ASPX (.net) »

Try+Catch+Exeception Errores de Captura

Estas en el tema de Try+Catch+Exeception Errores de Captura en el foro de ASPX (.net) en Foros del Web. Hola a todos, Soy nuevo en este foro y hoy vengo a uds a que alguien me saque del problema Estoy probrando cosas muy simples ...
  #1 (permalink)  
Antiguo 12/04/2013, 09:00
 
Fecha de Ingreso: abril-2013
Mensajes: 7
Antigüedad: 11 años
Puntos: 0
Try+Catch+Exeception Errores de Captura

Hola a todos,
Soy nuevo en este foro y hoy vengo a uds a que alguien me saque del problema

Estoy probrando cosas muy simples pero tengo errores en la captura de error

Tengo un procedimiento almacenado simple
Código:
ALTER PROCEDURE dbo.StoredProcedure3
	(@id int,  @respuesta int output)
AS
 Begin
  if Exists (Select * from Products where ProductID= @id)
  Begin	
  set @respuesta=1
  end
  else
  begin
  set @respuesta=0
  end
  return @respuesta
  end
Este lo ejecuté y funciona perfectamente, ahora mi llamada y tratamiento del SP.
creo que es importante:
C#, VS2010 Ultimate, SQLSERVER 2012 y si se fijan cambie de "Protected" que declara por defecto el VS lo converti a "Public" para poder usar un Response.

Código:
public void Button2_Click(object sender, EventArgs e)
        {
            using (SqlConnection connection = new SqlConnection("Data Source=Usuario-PC;Initial Catalog=C:\\LINQTEST6\\NORTHWND.MDF;Integrated Security=True"))
            {
                try
                {
                    using (SqlCommand command = new SqlCommand())
                    {
                        string Elvalor;
                        connection.Open();
                        command.Connection = connection;
                        command.CommandType = System.Data.CommandType.StoredProcedure;
                        command.CommandText = "StoredProcedure3";
                        command.CommandTimeout = 10;
                        command.Parameters.AddWithValue("@id", int.Parse(this.TextBox1.Text));
                        command.Parameters.Add(new SqlParameter("@respuesta", System.Data.SqlDbType.Int));
                        command.Parameters["@respuesta"].Direction = System.Data.ParameterDirection.Output;
                        command.ExecuteNonQuery();
                        Elvalor = command.Parameters["@respuesta"].Value.ToString();
                        if (Elvalor == "1")
                        {
                            Response.Write("<script>alert('Success')</script>");

                        }
                        else
                        {
                            Response.Write("<script>alert('NO EXIST!!!!')</script>");
                        }
                        connection.Close();

                    }

                }
                catch (Exception ex)
                {
                    throw new Exception(ex.Message);
                }
            }

        }
Sé que este tipo de archi error, por lo que busqué en muchos sitios, foros y no pude solucionar el error.
Error: al ejecutar o compilar el VS me levanta un La cadena de entrada no tiene el formato correcto.

Por favor cualquier ayuda será bienvenida.
Gracias!!!
  #2 (permalink)  
Antiguo 12/04/2013, 09:50
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Try+Catch+Exeception Errores de Captura

Que linea te da el error?
__________________
Aviso: No se resuelven dudas por MP!
  #3 (permalink)  
Antiguo 12/04/2013, 10:14
 
Fecha de Ingreso: abril-2013
Mensajes: 7
Antigüedad: 11 años
Puntos: 0
Respuesta: Try+Catch+Exeception Errores de Captura

Hola Malenko

te estoy copiando el error que me levanta via WEB el cual no aparece hasta que detengo el debug

Error:

------------------------------------------------------
Error de servidor en la aplicación '/'.

La cadena de entrada no tiene el formato correcto.

Descripción: Excepción no controlada al ejecutar la solicitud Web actual. Revise el seguimiento de la pila para obtener más información acerca del error y dónde se originó en el código.

Detalles de la excepción: System.Exception: La cadena de entrada no tiene el formato correcto.

Error de código fuente:


Código:
Línea 98:                 catch (Exception ex)
Línea 99:                 {
Línea 100:                    throw new Exception(ex.Message);
Línea 101:                }
Línea 102:            }
  #4 (permalink)  
Antiguo 12/04/2013, 11:05
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Try+Catch+Exeception Errores de Captura

Si simplemente vas a reenviar la excepcion hacia "arriba", no tienes porque hacer el "new", te basta con esto:

Código:
 catch (Exception ex)
{
       throw ex;
}
__________________
Aviso: No se resuelven dudas por MP!
  #5 (permalink)  
Antiguo 12/04/2013, 11:09
 
Fecha de Ingreso: abril-2013
Mensajes: 7
Antigüedad: 11 años
Puntos: 0
Respuesta: Try+Catch+Exeception Errores de Captura

Malenko:

Eliminé el new pero el error persiste del mismo tipo
  #6 (permalink)  
Antiguo 12/04/2013, 11:10
 
Fecha de Ingreso: abril-2013
Mensajes: 7
Antigüedad: 11 años
Puntos: 0
Respuesta: Try+Catch+Exeception Errores de Captura

Es decir cambie todo como me dijiste, incluso elimine el .message
  #7 (permalink)  
Antiguo 12/04/2013, 11:18
 
Fecha de Ingreso: abril-2013
Mensajes: 7
Antigüedad: 11 años
Puntos: 0
Respuesta: Try+Catch+Exeception Errores de Captura

Malenko:
Existe algo más que me genera duda, en el cliente yo tengo un texbox por el que entro el numero de id que busco y un botón que se encarga del resto. Ahora bien, si yo le estoy pasando un número de id que existe como en este caso es el 80 el cual tomé por referencia. (a través de una sentencia sql comprobé primeramente que existía). Esta programación no debería devolverme ninguna Execption más bien debería mostrarme el msg de que existe el producto no?
  #8 (permalink)  
Antiguo 12/04/2013, 11:30
Avatar de Malenko
Moderador
 
Fecha de Ingreso: enero-2008
Mensajes: 5.323
Antigüedad: 16 años, 3 meses
Puntos: 606
Respuesta: Try+Catch+Exeception Errores de Captura

Cita:
Iniciado por Almaguer Ver Mensaje
Malenko:
Existe algo más que me genera duda, en el cliente yo tengo un texbox por el que entro el numero de id que busco y un botón que se encarga del resto. Ahora bien, si yo le estoy pasando un número de id que existe como en este caso es el 80 el cual tomé por referencia. (a través de una sentencia sql comprobé primeramente que existía). Esta programación no debería devolverme ninguna Execption más bien debería mostrarme el msg de que existe el producto no?
El Write que tienes del alert lo único que hace es escribirlo pero no hará que se te muestre el "messagebox". Pero si buscas en el codigo fuente del navegador (Control+U en Firefox) lo tendrias que tener escrito.
__________________
Aviso: No se resuelven dudas por MP!
  #9 (permalink)  
Antiguo 12/04/2013, 11:40
 
Fecha de Ingreso: abril-2013
Mensajes: 7
Antigüedad: 11 años
Puntos: 0
Respuesta: Try+Catch+Exeception Errores de Captura

Malenko,

Disculpa mi ignorancia pero a pesar de que no ha cambiado nada(Error), sigo sin entender porque me levanta un error cdo no debería hacerlo y por otra parte fui al source code y siquiera llega a escribirlo.

Gracias
  #10 (permalink)  
Antiguo 12/04/2013, 16:06
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años
Puntos: 344
El problema se produce en el int.Parse , porque la cadena de entrada no se puede convertir a número.
Conviene que utilices un try - catch entre la instrucción para controlarlo bien o usar int.TryParse

Etiquetas: errores, server, sql
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 23:53.