Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Classe per eseguire una SP passando i parametri

    Ciao a tutti, vorrei realizzare una classe che possa eseguire differenti SP ricevendo in ingresso i parametri della SP... ma faccio un po' di confusione.

    con una logica del tipo

    void ExecSP(string query,SqlParameter[] pars)
    {

    conn.Open();
    SqlCommand cmd = new SqlCommand(query, conn);
    cmd.CommandType = CommandType.StoredProcedure;
    foreach (SqlParameter param in sqlParams)
    cmd.Parameters.Add(param);
    cmd.ExecuteNonQuery();
    conn.Close();
    }


    richiamando la classe, devo passare i valori da passare alla SP??? e la SP come interpreterà (associerà) i miei valori rispetto ai parametri contenuti in essa??? (in base all'ordine??)

    ultimo dubbio: i tipi in questo modo come vegono gestiti?? è necessario impostare il tipo del parametro oppure basta farlo a livello di SP?

    Grazie per l'aiuto
    Iceberg

  2. #2
    Ti faccio un esempio così capirai al volo (credo ):
    codice:
        void EseguiQuery()
        {
            SqlParameter p0 = new SqlParameter("Campo0", SqlDbType.Int);
            p0.Value = 0;
    
            SqlParameter p1 = new SqlParameter("Campo1", SqlDbType.VarChar, 50);
            p1.Value = "stringa";
    
            SqlParameter[] pars = { p0, p1 };
    
            ExecSP("nomeSP", pars);
        }
    
        void ExecSP(string query, SqlParameter[] pars)
        {
            SqlConnection cn = new SqlConnection("stringaDB");
            SqlCommand cmd = new SqlCommand(query, cn);
            cmd.CommandType = CommandType.StoredProcedure;
            foreach (SqlParameter p in pars)
                cmd.Parameters.Add(p);
            cn.Open();
            cmd.ExecuteNonQuery();
            cn.Close();
        }
    Fammi sapere

  3. #3
    Grazie mille per la risposta dettagliatissima!!!!
    Iceberg

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.