IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Accès aux données Discussion :

Probleme connexion base access accdb par classe


Sujet :

Accès aux données

  1. #1
    Membre à l'essai
    Homme Profil pro
    MOA
    Inscrit en
    Août 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : MOA
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 16
    Points : 14
    Points
    14
    Par défaut Probleme connexion base access accdb par classe
    Bonjour à tous,

    Je souhaite faire une classe permettant de faire des connexions sous access (accdb) et d'executer des requetes etc....
    J'en ai faites une sous Oracle qui fonctionne pas mal.
    Je débute en C#, et je ne comprend pas le problème que je rencontre.

    Quand je test un code hyper simple en direct (appel depuis un bouton d'une form), il fonctionne a priori correctement :
    OleDbConnection Ma_Connexion;
    string Ma_Chaine_Connexion;
    Ma_Chaine_Connexion = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Users\\RFRH6673\\Desktop\\Indicateurs jours\\Indicateurs_Jours.accdb";
    Ma_Connexion = new OleDbConnection(Ma_Chaine_Connexion);
    Ma_Connexion.Open();



    Quand je l'implémente dans une classe, j'ai une erreur :
    appel de la classe : Access_Connect Ma_Connexion_Access = new Access_Connect();

    la classe :
    class Access_Connect
    {

    private OleDbConnection Ma_Connexion;
    private string Ma_Requete="";
    private bool Erreur;

    public Access_Connect()
    {
    string Ma_Chaine_Connexion;


    Ma_Chaine_Connexion = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\\Users\\RFRH6673\\Desktop\\Indicateurs jours\\Indicateurs_Jours.accdb";
    Ma_Connexion = new OleDbConnection(Ma_Chaine_Connexion);

    Ma_Connexion.Open();


    }

    L'erreur :
    Une exception non gérée du type 'System.TypeInitializationException' s'est produite dans System.Transactions.dll
    Informations supplémentaires*: Une exception a été levée par l'initialiseur de type pour 'System.Transactions.Diagnostics.DiagnosticTrace'.


    Le problème est certaiement très simple et il doit crever les yeux ! mais je vois pas .
    Merci d'avance pour votre aide .
    Bonne journée.

  2. #2
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    Salut,

    utilise les balises CODE pour que ton code soit plus lisible (bouton # dans la barre).
    Ce code est-il exactement celui que tu tentes d'exécuter ?
    Si tu mets un point d'arrêt sur Ma_Connexion.Open() et que d'avance d'un pas, ça te dit quoi ?

    NB :
    * point d'arrêt : F9
    * lancer en mode debug : F5
    * avancer d'un pas : F10
    Plus je connais de langages, plus j'aime le C.

  3. #3
    Membre à l'essai
    Homme Profil pro
    MOA
    Inscrit en
    Août 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : MOA
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 16
    Points : 14
    Points
    14
    Par défaut
    Merci jopopmk pour ta réponse
    J'ai bien sur déjàt utilisé le mode debug et il plante sur open() avec le code erreur
    déja cité dans l'instanciation par constructeur de l'objet.
    Erreur : Une exception non gérée du type 'System.TypeInitializationException' s'est produite dans System.Transactions.dll
    Informations supplémentaires*: Une exception a été levée par l'initialiseur de type pour 'System.Transactions.Diagnostics.DiagnosticTrace'.

    Ce qui est étrange c'est que le même code en direct sur un bouton form fonctionne.
    il semblerait que la référence à l'instance Ma_Connexion
    J'ai posté ce problème sur d'autres forums et personne ne semble pourvoir apporter de réponse.
    Ce qui est paradoxal c'est que la classe que j'ai faites sur une base oracle 11g fonctionne bien et que celle sur une base access donc du même éditeur pose problème...

  4. #4
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    Pourquoi je te demande de passer pas-à-pas ? Parce que par définition cette exception est levée génériquement lorsqu'il y a un souci dans l'initialisation d'un objet, mais ne donne aucune information sur le pb en lui-même. Il faut donc trouver ce qui déconne dans ton constructeur (regarde notamment la InnerException).

    Pourquoi je te demande si tu nous as bien mis le même code que tu tentes d'exécuter ? Parce que cette exception intervient assez souvent avec des classes/membres statiques (et y'en a pas ici), et que ton code ne pose aucun problème chez moi.
    Plus je connais de langages, plus j'aime le C.

  5. #5
    Membre à l'essai
    Homme Profil pro
    MOA
    Inscrit en
    Août 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : MOA
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 16
    Points : 14
    Points
    14
    Par défaut
    Merci pour tes conseils.
    J'ai tenté de faire ce que tu as demandé. En essayant de récupérer les exceptions

    try {
    Ma_Connexion.Open();
    }
    catch(Exception e) {
    MessageBox.Show("Message Exception : " + e.Message + "\n" +
    "Message Inner Exception : " + e.InnerException.Message);
    }


    Lors de l'exécution pas à pas détaillé F11, le message est
    e.InnerException = {"Échec de l'initialisation du système de configuration"}

    En cherchant un peu je trouve ces infos... sont elles utiles ?
    Dans e.InnerException.StackTrace
    à System.Configuration.ClientConfigurationSystem.EnsureInit(String configKey)
    à System.Configuration.ClientConfigurationSystem.PrepareClientConfigSystem(String sectionName)
    à System.Configuration.ClientConfigurationSystem.System.Configuration.Internal.IInternalConfigSystem.GetSection(String sectionName)
    à System.Configuration.ConfigurationManager.GetSection(String sectionName) à System.Configuration.PrivilegedConfigurationManager.GetSection(String sectionName)
    à System.Diagnostics.DiagnosticsConfiguration.Initialize()
    à System.Diagnostics.DiagnosticsConfiguration.get_Sources()
    à System.Diagnostics.TraceSource.Initialize()
    à System.Transactions.Diagnostics.DiagnosticTrace..cctor()

  6. #6
    Membre actif
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Avril 2006
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 141
    Points : 210
    Points
    210
    Par défaut
    Bonjour,

    Pouvez vous essayer de forcer l'application à ce compiler en 32bit pour voir si le problème persiste ?

    Merci,
    DSI et développeur du logiciel Lulidb
    http://www.lulidb.com - outils de gestion de base de données orienté développer.

  7. #7
    Membre à l'essai
    Homme Profil pro
    MOA
    Inscrit en
    Août 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : MOA
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 16
    Points : 14
    Points
    14
    Par défaut
    Bonjour,

    Hélas la compilation 32 ne change pas le problème.
    On va faire autrement c'est pas très grave, il y a toujours une solution.
    Merci pour ces réponses.
    Excellente journée

  8. #8
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    Re,

    on dirait un souci d'initialisation du fichier de config.
    T'utilises un App.config/Web.config ?
    Plus je connais de langages, plus j'aime le C.

  9. #9
    Membre à l'essai
    Homme Profil pro
    MOA
    Inscrit en
    Août 2011
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : MOA
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2011
    Messages : 16
    Points : 14
    Points
    14
    Par défaut
    Bonjour,
    Oui, très bonne remarque.
    Effectivement j'ai rencontré des problèmes en l'utilisant cela pourrait venir de la, j'y pensais plus .
    Au début ça marchait bien j'ai fait plusieurs petite applis ou je stockais tous mes paramètres dedans
    et dans celle ci la lecture des puis j'ai du faire une modif inadéquate et la lecture des key ne fonctionnaient plus.
    On peut réinitialiser le fichier App.config ?
    Sinon je vais recréer un nouveau projet, importer mes classes et théoriquement ça devrait fonctionner

    Merci encore !

  10. #10
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    Je ne connais pas de méthode pour "reset" un App.config.
    Si tu peux faire le nettoyage à la main c'est mieux.
    Sinon, plutôt que de migrer ton code, tu crées un projet vide pour voir à quoi ressemble un App.config tout neuf

    Chez moi (pour un Framewrok cible 4.5) j'ai ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
        <startup> 
            <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>
        </startup>
    </configuration>
    Plus je connais de langages, plus j'aime le C.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probleme de connexion base access
    Par nicolasferraris dans le forum ASP
    Réponses: 4
    Dernier message: 30/10/2008, 09h46
  2. [ACCESS] connexion base ACCESS sans VC++ ou BC++ ni wizard
    Par roce dans le forum Autres éditeurs
    Réponses: 3
    Dernier message: 18/03/2007, 23h13
  3. [VB6]Connexion base Access
    Par bébé sall dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 24/02/2006, 13h49
  4. Problème de connexion base Access
    Par Ricardo_Tubbs dans le forum ASP
    Réponses: 3
    Dernier message: 21/02/2006, 16h06
  5. [2.0] Chaine connexion base Access et SqlDataSource
    Par quanou dans le forum ASP.NET
    Réponses: 5
    Dernier message: 14/02/2006, 11h50

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo