none
Mon code ne reconnait plus les paramètres SQL de mes procedures stockées! RRS feed

  • Question

  • Bonjour,

    dans un souci d'amélioration de mon code ...

    je suis partie de:

            public static void InitConnexionMobile()
            {
                try
                {
                    //instancier l'objet de connexion
                    m_Connexion = new SqlConnection(Properties.Settings.Default.cnStr);
    
    
                    //Ouvrir la connexion à la bd
                    m_Connexion.Open();
    
                    //creer la commande et indiquer le type de commande
                    m_commande = m_Connexion.CreateCommand();
                    m_commande.CommandType = CommandType.StoredProcedure;
                }
                catch (Exception ex)
                {
                    //lever une exception et l'ecrire dans le journal d'événement windows
                    EventLog.GetEventLogs(ex.Message);
                }
    
            }
    
    Pour
            public static bool  InitConnexionMobile()
            {
                try
                {
                    //Connexion Local
    
                    Properties.Settings.Default.MaChaineConnexion  = "server=(local)\\SQLEXPRESS;Integrated Security=SSPI;database=RECLACSR-DB";
                    //Connexion réso
                    //string test = GetConnectionString();
                    //Saved
                    Properties.Settings.Default.Save();
                    //instancier l'objet de connexion
                    //m_Connexion = new SqlConnection(Properties.Settings.Default.MaChaineConnexion);
                    m_Connexion = new SqlConnection(Properties.Settings.Default.cnStr );
                    //Ouvrir la connexion à la bd
                    m_Connexion.Open();
    
                    //Verification
                    if ((m_Connexion.State == ConnectionState.Open) && (m_Connexion != null))
                    {m_commande =  m_Connexion.CreateCommand(); return true; }
                    else
                    {
                        MessageBox.Show("Echec de connexion! Veuillez contactez l'admnistrateur", "SAD-CSR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return false ;
                    }               
                }
                catch (Exception ex)
                {
                    //lever une exception et l'ecrire dans le journal d'événement windows
                    EventLog.GetEventLogs(ex.Message);
                    return false;
                }
    
            }

    et Paf!!!....

    lorsue j'execute tout se passe bien 

    mais alors lorsque ma procedure stockée contient des paramètres.... il me dit que cela n'a pas ete fourni!!

    lorsque je reviens a la version précédente de ma fonction de connexion (Version précédente de toute mon application) la j'ai aucun souci!!

    Je n'y comprends rien!!

    Qu'a til bien pu se passer?


    Marcelle NGOUNOU

    mercredi 19 septembre 2012 01:19

Réponses

  • Bonjour,

    dans un souci d'amélioration de mon code ...

    je suis partie de:

            public static void InitConnexionMobile()
            {
                try
                {
                    //instancier l'objet de connexion
                    m_Connexion = new SqlConnection(Properties.Settings.Default.cnStr);
    
    
                    //Ouvrir la connexion à la bd
                    m_Connexion.Open();
    
                    //creer la commande et indiquer le type de commande
                    m_commande = m_Connexion.CreateCommand();
                    m_commande.CommandType = CommandType.StoredProcedure;
                }
                catch (Exception ex)
                {
                    //lever une exception et l'ecrire dans le journal d'événement windows
                    EventLog.GetEventLogs(ex.Message);
                }
    
            }
    Pour
            public static bool  InitConnexionMobile()
            {
                try
                {
                    //Connexion Local
    
                    Properties.Settings.Default.MaChaineConnexion  = "server=(local)\\SQLEXPRESS;Integrated Security=SSPI;database=RECLACSR-DB";
                    //Connexion réso
                    //string test = GetConnectionString();
                    //Saved
                    Properties.Settings.Default.Save();
                    //instancier l'objet de connexion
                    //m_Connexion = new SqlConnection(Properties.Settings.Default.MaChaineConnexion);
                    m_Connexion = new SqlConnection(Properties.Settings.Default.cnStr );
                    //Ouvrir la connexion à la bd
                    m_Connexion.Open();
    
                    //Verification
                    if ((m_Connexion.State == ConnectionState.Open) && (m_Connexion != null))
                    {m_commande =  m_Connexion.CreateCommand(); return true; }
                    else
                    {
                        MessageBox.Show("Echec de connexion! Veuillez contactez l'admnistrateur", "SAD-CSR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return false ;
                    }               
                }
                catch (Exception ex)
                {
                    //lever une exception et l'ecrire dans le journal d'événement windows
                    EventLog.GetEventLogs(ex.Message);
                    return false;
                }
    
            }

    et Paf!!!....

    lorsue j'execute tout se passe bien 

    mais alors lorsque ma procedure stockée contient des paramètres.... il me dit que cela n'a pas ete fourni!!

    lorsque je reviens a la version précédente de ma fonction de connexion (Version précédente de toute mon application) la j'ai aucun souci!!

    Je n'y comprends rien!!

    Qu'a til bien pu se passer?


    Marcelle NGOUNOU

    Bonjour,

    Où est passé ce code ? :

    m_commande.CommandType = CommandType.StoredProcedure;

    Ensuite, je vous déconseilles cette partie et laisser l'ancienne :

                    Properties.Settings.Default.MaChaineConnexion  = "server=(local)\\SQLEXPRESS;Integrated Security=SSPI;database=RECLACSR-DB";
                    //Connexion réso
                    //string test = GetConnectionString();
                    //Saved
                    Properties.Settings.Default.Save();

    Le jour où l'adresse  serveur change, comment allez-vous faire ? recompiler l'application ?

    Après où est le reste de traitement de code (exécution de la procédure)?

    Cordialement


    Merci de valider par "Proposer comme réponse" si celle-ci répond a votre demande !

    • Marqué comme réponse marclas jeudi 20 septembre 2012 04:39
    mercredi 19 septembre 2012 07:14

Toutes les réponses

  • Bonjour,

    dans un souci d'amélioration de mon code ...

    je suis partie de:

            public static void InitConnexionMobile()
            {
                try
                {
                    //instancier l'objet de connexion
                    m_Connexion = new SqlConnection(Properties.Settings.Default.cnStr);
    
    
                    //Ouvrir la connexion à la bd
                    m_Connexion.Open();
    
                    //creer la commande et indiquer le type de commande
                    m_commande = m_Connexion.CreateCommand();
                    m_commande.CommandType = CommandType.StoredProcedure;
                }
                catch (Exception ex)
                {
                    //lever une exception et l'ecrire dans le journal d'événement windows
                    EventLog.GetEventLogs(ex.Message);
                }
    
            }
    Pour
            public static bool  InitConnexionMobile()
            {
                try
                {
                    //Connexion Local
    
                    Properties.Settings.Default.MaChaineConnexion  = "server=(local)\\SQLEXPRESS;Integrated Security=SSPI;database=RECLACSR-DB";
                    //Connexion réso
                    //string test = GetConnectionString();
                    //Saved
                    Properties.Settings.Default.Save();
                    //instancier l'objet de connexion
                    //m_Connexion = new SqlConnection(Properties.Settings.Default.MaChaineConnexion);
                    m_Connexion = new SqlConnection(Properties.Settings.Default.cnStr );
                    //Ouvrir la connexion à la bd
                    m_Connexion.Open();
    
                    //Verification
                    if ((m_Connexion.State == ConnectionState.Open) && (m_Connexion != null))
                    {m_commande =  m_Connexion.CreateCommand(); return true; }
                    else
                    {
                        MessageBox.Show("Echec de connexion! Veuillez contactez l'admnistrateur", "SAD-CSR", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        return false ;
                    }               
                }
                catch (Exception ex)
                {
                    //lever une exception et l'ecrire dans le journal d'événement windows
                    EventLog.GetEventLogs(ex.Message);
                    return false;
                }
    
            }

    et Paf!!!....

    lorsue j'execute tout se passe bien 

    mais alors lorsque ma procedure stockée contient des paramètres.... il me dit que cela n'a pas ete fourni!!

    lorsque je reviens a la version précédente de ma fonction de connexion (Version précédente de toute mon application) la j'ai aucun souci!!

    Je n'y comprends rien!!

    Qu'a til bien pu se passer?


    Marcelle NGOUNOU

    Bonjour,

    Où est passé ce code ? :

    m_commande.CommandType = CommandType.StoredProcedure;

    Ensuite, je vous déconseilles cette partie et laisser l'ancienne :

                    Properties.Settings.Default.MaChaineConnexion  = "server=(local)\\SQLEXPRESS;Integrated Security=SSPI;database=RECLACSR-DB";
                    //Connexion réso
                    //string test = GetConnectionString();
                    //Saved
                    Properties.Settings.Default.Save();

    Le jour où l'adresse  serveur change, comment allez-vous faire ? recompiler l'application ?

    Après où est le reste de traitement de code (exécution de la procédure)?

    Cordialement


    Merci de valider par "Proposer comme réponse" si celle-ci répond a votre demande !

    • Marqué comme réponse marclas jeudi 20 septembre 2012 04:39
    mercredi 19 septembre 2012 07:14
  • bonjour,

    Effectivement.....j' ai fini par trouver la reponse... mais faute de Net, j ai pau pu mettre a jour...

    en fait, j essaye de construire ma connection en passant par ce parametre car il est sauvegarder dans le fichier de configuration.

    en fais l'application va tourner sur un autre poste ....

    alors, j'aimerais pouvoir changer cette valeur.

     


    Marcelle NGOUNOU

    mercredi 19 septembre 2012 14:43