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 :

Gerer les pertes de connection


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2010
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2010
    Messages : 69
    Par défaut Gerer les pertes de connection
    Bonjour tous le monde,

    J'ai fait un programme en c# qui utilise des connection SQL.

    J'aimerai savoir comment vous gérer les pertes de connection.

    Je sais qu'il faut utilisé des try catch.

    Mais par exemple dans une fonction j'utilise un datareader

    Comment savoir si il est rentrer dans le catch s'il a perdu la connection ou bien s'il a eu un problème avec la base de donné au tout autre problème ?

    Cette exemple est valable pour toute les autres chose relier a la connection sql comme les transaction etc.

    Alors comment faite vous pour gèrer les pertes de connection et avertir l'utilisateur si la connection est perdu

    merci beaucoup en esperant avoir été assez claire.

  2. #2
    Membre chevronné Avatar de MetalGeek
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    412
    Détails du profil
    Informations personnelles :
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 412
    Par défaut
    Salut,

    ton objet représentant la connexion a une propriété State.

    Aussi, dans le catch l'exception attrapée te fournit des informations sur ce qui s'est passé.

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2010
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2010
    Messages : 69
    Par défaut
    merci pour ta réponse,

    j'ai fait quelque teste et la fonction state ne change pas immédiatement après que la connection soit perdu. J'ai fait quelque recherche et on dirai qu'elle change seulement si elle attrape un exception (j'ai pas tester si elle changai vraiment). A moin qu'il y ait une fonction refresh ?

    Donc il semblerai que le state serai plus un indicateur pour savoir si une connection est déja ouverte avant d'en ouvrir une. A moins que je ne me trompe ?

    comme gerer savoir que le message d'exception est celui d'une connection perdu.

    merci

    PS: Je tien a préciser que mon programme est destiné a windows CE 5 et que je suis donc sur le Compact framework 3,5

  4. #4
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Ne pas oublier aussi les event StateChange et InfoMessage sur l'objet SqlConnection, qui permettent d'être averti des modifications d'état ou de remontée d'info depuis le serveur.

    Sauf problème réseau et/ou redémarrage du serveur alors que la connexion est ouverte, on ne "perd" pas une connexion comme cela.

    Si cela arrive c'est visiblement que la durée de vie de tes connexions est trop longue.

    C'est un schéma qui avait sa justification, il y a ... quelques années (+ de 10), mais les connecteurs actuels dispose (tous ?) de pool de connexions qu font qu'on ne voit pas vraiment de nécéssité à laisser une connexion ouverte quand on ne l'utilise pas. Le temps d'aqcuisition sur Sql Server est quasi négligeable.

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2010
    Messages
    69
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2010
    Messages : 69
    Par défaut
    merci bluedeep pour ta réponse,

    Comment marche les event state change sur le sql connection ?

    Pour la connection il y a des risque de perte de connection puisque je suis sur un appareil mobile qui ce promène dans une usine. Il y a donc des chance que la connection puisse être perdu en milieux de traitement par exemple et envois des exception c'est pourquoi j'essai de comprendre comment les gérer.

    merci

  6. #6
    Membre éprouvé Avatar de arthenius
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2005
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

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

    Informations forums :
    Inscription : Mars 2005
    Messages : 107
    Par défaut
    salut

    je tombe un peu par hasard sur ce poste.
    nous avions la meme problematique, a savoir des pockets qui se connecte via le wifi a une bdd sql stockee sur un serveur...

    enfin qd je dis se connecte, nous passons par des webservices, n'ayant pas trouver d'autre méthodes (pas de connection direct ADO depuis pocket vers sql sur le reseau...enfin a ma connaissance...)

    Pour palier a ces pbs de deconnection lie a un wifi defaillant par endroit (stock oblige...), j'ai fait un webservice qui permet de tester (par un simple select) si la connection est valide
    si l'appel a ce webservice plante ==> j'ai une boucle while qui se lance, qui relance le meme webservice en incrementant une variable et tout les 10 essais je demande si on souhaite continuer...tant que ce test n'est pas bon, je ne lance pas les vrais gros traitement d'update ou autre insert de BDD

    c'est le seul moyen a peu pres propre que j'ai trouver, pour palier a notre pb de wifi...
    si cela peux t'aider...

Discussions similaires

  1. Gérer les events d'un tableau de boutons
    Par lord_kalipsy dans le forum wxWidgets
    Réponses: 7
    Dernier message: 20/10/2004, 10h13
  2. gerer les parametres entrée sur un TADOStoredProc
    Par keguira dans le forum Bases de données
    Réponses: 1
    Dernier message: 13/09/2004, 15h56
  3. [Htaccess] Gérer les erreurs HTTP du type 404...
    Par Marshall_Mathers dans le forum Apache
    Réponses: 4
    Dernier message: 01/07/2004, 10h29
  4. [interbase] gerer les transactions
    Par webbulls dans le forum Bases de données
    Réponses: 3
    Dernier message: 14/05/2004, 18h27
  5. [syntaxe] Gerer les variables dans une requete
    Par rastapopulos dans le forum MS SQL Server
    Réponses: 12
    Dernier message: 15/04/2003, 12h53

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