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

ASP.NET Discussion :

Connection Bdd


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut Connection Bdd
    Bonjour,

    Je cherche la meilleur solution pour ma connexion à ma Bdd.
    Que pensez vous de mon code ? est bien ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
    public class SqlDbConnection
        {
            private SqlConnection oSqlConnection = null;
            private static object _instanceLocker = new object();
     
            private static SqlDbConnection _instanceSqlDbConnection;
            public static SqlDbConnection InstanceSqlDbConnection
            {
                get
                {
                    lock (_instanceLocker)
                    {
                        if (_instanceSqlDbConnection == null)
                        {
                            _instanceSqlDbConnection = new SqlDbConnection();
                        }
                        return _instanceSqlDbConnection;
                    }
                }
            }
     
            //Creation connexion et la renvoi
            public SqlConnection GetSqlConnection()
            {
                oSqlConnection = new SqlConnection("Data Source=localhost;Initial Catalog=maBdd;Integrated Security=True");
                //oSqlConnection = new SqlConnection(ConfigurationManager.ConnectionStrings["DBConnectionString"].ToString());
     
                if (oSqlConnection.State == System.Data.ConnectionState.Closed)
                    oSqlConnection.Open();
     
                return oSqlConnection;
            }
     
            public void CloseSqlConnection()
            {
                if (oSqlConnection != null)
                {
                    if (oSqlConnection.State == System.Data.ConnectionState.Open)
                        oSqlConnection.Close();
                }
            }
        }
    Appel de la classe :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SqlConnection cnx = SqlDbConnection.InstanceSqlDbConnection.GetSqlConnection();

    En faite je fais le meme systeme pour toutes classes de ma DAL, BLL...

    Des reactions ?

    Merci

  2. #2
    Expert confirmé

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Par défaut
    euh...

    j'ai un doute affreux, mais tu veux une seule connexion pour toute ton appli et tous tes utilisateurs ?

    passque a vue de nez, c'est ce que tu fais, non ?

    Et ca, ca ne me semble pas etre une bonne idee a moyen terme...quid de l;utilisateur2 qui doit faire une rerquete pendant que l'utilisateur1 en fait deja une ????


    Pour une appli asp.net, essaye plutot de pooler tes connections

    Mon Blog

    The Cake is still a lie !!!



    Vous voulez contribuer à la rubrique .NET ? Contactez-moi par MP.
    Vous voulez rédiger des articles pour la rubrique .NET ? Voici la procédure à suivre.

  3. #3
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    autais tu un exemple pour moi que je puisse me servir ?

  4. #4
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    Je cherche une class, que je puisse integrer a mes projets.

    merci

  5. #5
    Nip
    Nip est déconnecté
    Rédacteur

    Inscrit en
    Juin 2004
    Messages
    963
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 963

  6. #6
    Expert confirmé

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Par défaut
    l'idee de depart est pas top mal (en dehors du singleton)

    A la limite, fait plutot qq chose comme ce qui est decrit ici :
    http://johannblais.developpez.com/tu...-donnees/#LIII

    (je vais finir par le mettre en signature )

    Sinon, si tu veux des trucs plus "packages", regarde du cote des entreprise libraries, ou de Subsonic (j'aiiiime subsonic... )

    Mon Blog

    The Cake is still a lie !!!



    Vous voulez contribuer à la rubrique .NET ? Contactez-moi par MP.
    Vous voulez rédiger des articles pour la rubrique .NET ? Voici la procédure à suivre.

  7. #7
    Membre éprouvé
    Avatar de topolino
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    1 901
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 901
    Par défaut
    j'ai retravaillé mon code. Pouvez-vous me dire si c'est bon :


    Connection à la Bdd
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    public class BddConnection
        {
            private SqlConnection oSqlConnection = null;
     
            public SqlConnection GetSqlConnection()
            {
                try
                {
                    ConnectionStringSettings s = System.Web.Configuration.WebConfigurationManager.ConnectionStrings["BddConnectionString"];
                    oSqlConnection = new SqlConnection(s.ConnectionString.ToString());
     
                    if (oSqlConnection.State == System.Data.ConnectionState.Closed)
                        oSqlConnection.Open();
     
                }
                catch (Exception)
                {
     
                }
                return oSqlConnection;
            }
        }
    Utilisation : ClientDAO

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
     public abstract class ClientDAO
        {
            private static SqlConnection _myConnect;
            public static SqlConnection GetConnection()
            {
                if (_myConnect == null)
                {
                    BddConnection mySocle = new BddConnection();
                    _myConnect = (SqlConnection)mySocle.GetSqlConnection();
                }
     
                return _myConnect;
            }
     
            public static bool PseudoExist(string pseudo)
            {
                bool exist = false;
                try
                {
                    SqlCommand oSqlCommand = new SqlCommand("ps_PseudoExist", GetConnection());
                    oSqlCommand.CommandType = CommandType.StoredProcedure;
                    oSqlCommand.Parameters.Add("u_pseudo", SqlDbType.VarChar, 30).Value = pseudo;
     
                    int rowCount = Convert.ToInt32(oSqlCommand.ExecuteScalar());
                    if (rowCount > 0)
                        exist = true;
                }
                catch (Exception)
                {
     
                    throw;
                }
     
                return exist;
            }
        }
    Merci à vous

Discussions similaires

  1. Connection BDD MySQL => exception
    Par sam.fet dans le forum Servlets/JSP
    Réponses: 5
    Dernier message: 14/03/2007, 15h01
  2. [VB5]Pb connection Bdd
    Par calimero91 dans le forum VB 6 et antérieur
    Réponses: 23
    Dernier message: 12/06/2006, 07h43
  3. [VB] connection BDD mysql
    Par oceane751 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 18/02/2006, 23h10
  4. connection bdd
    Par nath-0-0 dans le forum Requêtes
    Réponses: 4
    Dernier message: 30/11/2005, 16h55
  5. prob connection bdd access chez hebergeur
    Par zorba49 dans le forum ASP
    Réponses: 2
    Dernier message: 14/09/2005, 19h23

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