Estoy de nuevo para trabajar con procedimientos almacenados.

Tenemos un sistema existente que utiliza procedimientos almacenados que comprobar los nombres de usuario y la url de caminos. El procedimiento Almacenado que se va a comprobar si los datos del usuario, existen. Si existe devuelve 1 si no se devuelve 0.

Estoy tratando de escribir asp.net código para llamar a este procedimiento almacenado mediante el aporte de la información de usuario y la ruta de acceso y, a continuación, utilizar la devuelve 0 o 1 valor en asp.net.

InformationsquelleAutor mshiyam | 2012-07-02

3 Comentarios

  1. 8

    Parece que necesitas procedimiento almacenado con el parámetro de salida

    int errorId = 0;
    
    using(SqlConnection sqlConnection = new SqlConnection(connectionString))
    {
        using(SqlCommand cmd = new SqlCommand("YourStoredProcedureName", sqlConnection))
        {
        cmd.CommandType=CommandType.StoredProcedure;
        SqlParameter parm=new SqlParameter("@username", SqlDbType.VarChar); 
        parm.Value="mshiyam";
        parm.Direction =ParameterDirection.Input ; 
        cmd.Parameters.Add(parm); 
    
        SqlParameter parm2=new SqlParameter("@path",SqlDbType.VarChar); 
        parm2.value = "Some Path";
        parm2.Direction=ParameterDirection.Output;
        cmd.Parameters.Add(parm2); 
    
    
        SqlParameter parm3 = new SqlParameter("@errorId",SqlDbType.Int);
        parm3.Direction=ParameterDirection.Output; 
        cmd.Parameters.Add(parm3); 
    
        sqlConnection.Open(); 
        sqlConnection.ExecuteNonQuery();
    
        errorId = cmd.Parameters["@errorId"].Value; //This will 1 or 0
       }
    
    }
    • Genial que te está poniendo a su SqlConnection en un using().... bloque – pero usted también debe hacer lo mismo para su SqlCommand !
    • Lo siento @marc_s escrito demasiado rápido…. Voy a actualizar el post ahora
    • No quieres decir cmd.ExecuteNonQuery();`?
  2. 1

    Utilice el siguiente código,

    SqlCommand cmd = new SqlCommand("MyStoredProcedure", cn);
    cmd.CommandType=CommandType.StoredProcedure;
    SqlParameter parm=new SqlParameter("@username",SqlDbType.VarChar);
    parm.Value=strUser;
    parm.Direction =ParameterDirection.Input ; 
    cmd.Parameters.Add(parm); 
    parm=new SqlParameter("@url",SqlDbType.VarChar);
    parm.Value=strUrl;
    parm.Direction =ParameterDirection.Input ; 
    cmd.Parameters.Add(parm); 
    parm=new SqlParameter("@errorID",SqlDbType.Int); 
    parm.Direction=ParameterDirection.Output; //This is important!
    cmd.Parameters.Add(parm); 
    cn.Open(); 
    cmd.ExecuteNonQuery();
    cn.Close(); 
    
    //Print the output value
    Console.WriteLine(cmd.Parameters["@errorID"].Value); 
    Console.ReadLine();
  3. 0
    int errorId = 0;
    
    SqlCommand cmd = new SqlCommand("YourSPName", cn);
    cmd.CommandType=CommandType.StoredProcedure;
    SqlParameter parm=new SqlParameter("@username",SqlDbType.VarChar);
    parm.Value=strUser;
    parm.Direction =ParameterDirection.Input ; 
    cmd.Parameters.Add(parm); 
    parm=new SqlParameter("@url",SqlDbType.VarChar);
    parm.Value=strUrl;
    parm.Direction =ParameterDirection.Input ; 
    cmd.Parameters.Add(parm); 
    parm=new SqlParameter("@errorID",SqlDbType.Int); 
    parm.Direction=ParameterDirection.Output; //This is important!
    cmd.Parameters.Add(parm); 
    cn.Open(); 
    errorId = (int)cmd.ExecuteNonQuery();
    cn.Close(); 
    
    sqlConnection.Open(); 
    sqlConnection.ExecuteNonQuery();

    Poner Condiciones:

    if(errorId == 1)
    {
       `"Allow User here"`
    }
    if(errorId==0)
    {
       `Redirect when you to redirect to use.`
    }  

Dejar respuesta

Please enter your comment!
Please enter your name here