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

C# Discussion :

gestion connexion BD via classe dans service avec tâche principale et Timer


Sujet :

C#

  1. #1
    Membre actif Avatar de grinder59
    Inscrit en
    Septembre 2005
    Messages
    707
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 707
    Points : 215
    Points
    215
    Par défaut gestion connexion BD via classe dans service avec tâche principale et Timer
    Bonjour,

    je suis en train de développer un service C# composé d'un traitement principal (tâche main) et d'une tâche exécutée toutes les X secondes via un timer tâche timer)...

    Les 2 tâches utilisent une connexion à une base de données. Pour cette connexion, j'ai défini une classe qui la gère de la façon suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    class ConnexionDB{
      public SqlConnection bd1;
      public SqlConnection bd2;
      ConnexionDB(){
        bd1 = connexion à la BD1;
        bd2 = connexion à la BD2;
      }
    }
    Dans mon programme principal, j'instancie un objet de ma classe de connexion à la BD et je passe cet objet en paramètre au différentes méthodes en ayant besoin.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    public main()
    {
      ConnexionDB objet1 = new ConnexionDB();
      ConnexionDB objet2 = new ConnexionDB();
    ....
       myObjet.myMethod2(objet1.bd1);
       myObjet.myMethod2(objet1.bd2);
    }
    Les petites questions que je me pose sont les suivante :

    En cas d'utilisation simultanée de l'objet de connexion à la BD par la tâche Main et la tâche Timer, ne va-t-il pas y avoir un souci ?
    Puis-je instancier 2 objets de la classe connexion à la BD ? l'un pour la tâche Main et l'autre pour la tâche Timer ? Sachant que dans la méthode de connexion utilisera les mêmes paramètres pour se connecter, ne va-t-il pas y avoir d'incompatibilité à créer 2 objets du même type ConnexionDB ?

    Merci de votre aide et de vos conseils...

  2. #2
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 150
    Points : 25 066
    Points
    25 066
    Par défaut
    tu peux ouvrir des centaines de connexions simultannées et ce à partir du meme exe !

    par contre microsoft préconise de fermer la connexion dès qu'on a fini de lire les données

    et donc si ton timer fait que tu fais un truc toutes les 3 secondes, il faut réinstancier une nouvelle connexion, et la disposer à la fin de ton execution
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre actif Avatar de grinder59
    Inscrit en
    Septembre 2005
    Messages
    707
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 707
    Points : 215
    Points
    215
    Par défaut
    ça c'est une excellente nouvelle ! Merci beaucoup pour ta réponse
    A tout hasard, petite question subsidiaire, j'ai créé une méthode de ma classe GestionDB qui permet d'exécuter une requête sql passée en paramètre... Afin de récupérer les données de résultat de cette requête, comment la retourner de façon propre au programme principale ? dataset ? datareader ? Hashtable ?

    Encore merci !!!

  4. #4
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 150
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 150
    Points : 25 066
    Points
    25 066
    Par défaut
    datatable ou une collection d'une classe identique à la table
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre actif Avatar de grinder59
    Inscrit en
    Septembre 2005
    Messages
    707
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 707
    Points : 215
    Points
    215
    Par défaut
    Encore un grand merci pour ton aide précieuse !!!

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

Discussions similaires

  1. Réponses: 0
    Dernier message: 16/04/2014, 15h58
  2. Erreur dans le déploiement d'un web service avec axis
    Par hacksi dans le forum Services Web
    Réponses: 1
    Dernier message: 18/02/2008, 14h56
  3. securisation de Web Services dans Jonas avec Axis
    Par emeras dans le forum Services Web
    Réponses: 1
    Dernier message: 08/02/2007, 16h54
  4. Réponses: 5
    Dernier message: 04/10/2006, 16h45
  5. Réponses: 9
    Dernier message: 25/09/2005, 17h33

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