sql >> Base de Datos >  >> RDS >> Sqlserver

Convertir texto de cuadro de texto a entero

Sugiera hacer esto en su código subyacente antes de enviarlo a SQL Server.

 int userVal = int.Parse(txtboxname.Text);

Tal vez intente analizar y, opcionalmente, informar al usuario.

int? userVal;
if (int.TryParse(txtboxname.Text, out userVal) 
{
  DoSomething(userVal.Value);
}
else
{ MessageBox.Show("Hey, we need an int over here.");   }

La excepción que observa significa que no está incluyendo el valor en la llamada al proceso almacenado. Intente establecer un punto de interrupción del depurador en su código en el momento en que llama al código que genera la llamada a SQL Server.

Asegúrese de adjuntar el parámetro al SqlCommand.

using (SqlConnection conn = new SqlConnection(connString))
{
    SqlCommand cmd = new SqlCommand(sql, conn);
    cmd.Parameters.Add("@ParamName", SqlDbType.Int);
    cmd.Parameters["@ParamName"].Value = newName;        
    conn.Open();
    string someReturn = (string)cmd.ExecuteScalar();        
}

Tal vez inicie SQL Profiler en su base de datos para inspeccionar la declaración SQL que se envía/ejecuta.