bouchnina

class connection pour le mode deconnecte

Oct 7th, 2013
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 3.88 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Data.Common;
  6. using System.Data;
  7.  
  8. // Pour les message box d erreurs
  9. using System.Windows.Forms;
  10.  
  11.  
  12. namespace Deconnecte
  13. {
  14.     class Connection
  15.     {
  16.         DbConnection cn ;// Objet de connection
  17.        
  18.  
  19.         DataSet ds = new DataSet(); // dataset pour stocker tous les tables de la bdd
  20.  
  21.         DataTable dt = new DataTable(); // Objet dataTable pour manipuler les donnees et les affichés dans une dataGridView apres
  22.  
  23.         DbDataAdapter da; // DataAdapter pour importer la BDD et travailler avec
  24.  
  25.         DbProviderFactory dbf = DbProviderFactories.GetFactory("System.Data.SqlClient"); // On montre au csharp qu on travaille avec un serveur SQL
  26.        
  27.         DbConnectionStringBuilder cns = new DbConnectionStringBuilder(); // Objet pour creer la chaine de connection
  28.        
  29.  
  30.             // Constructeur de la classe
  31.             // On doit passer les infos de connexion lors de l instanciation
  32.             // sinn une exception et levée
  33.             // Lors de l instanciation On appel la methode connect
  34.         public Connection(string server = "" , string database ="" , string security = "") {
  35.             if (server == string.Empty || database == string.Empty || security == string.Empty)
  36.                 throw new Exception("Les infos de connexion ne sont pas valid\nVerifier le nom du serveur , database ou securite");
  37.             else {
  38.                 this.Connect(server, database, security);
  39.             }
  40.         }
  41.  
  42.  
  43.         // Cette method fait la connexion pour nous
  44.         // elle est automatiquement appelée lors de l instanciation
  45.         void Connect(string server , string database , string security ){
  46.             // On cree la chaine de connexion
  47.             cns.Add("server", server);
  48.             cns.Add("database", database);
  49.             cns.Add("integrated security", security);
  50.             try
  51.             {
  52.                 // On cree la connection dans l objet connection
  53.                 cn = dbf.CreateConnection();
  54.                 //On passe la chaine a notre connexion
  55.                 cn.ConnectionString = cns.ConnectionString;
  56.                
  57.                 this.da = dbf.CreateDataAdapter(); // On cree le dataAdapter
  58.                
  59.             }
  60.             catch (Exception ex) {
  61.                 MessageBox.Show("Erreur de connexion : "+ex.Message);
  62.             }
  63.         }
  64.  
  65.  
  66.             // Pour passer Une requete On a besoin de la requete + le nom de la table
  67.         public DataTable Requete(string sql , string tableName) {
  68.             // On cree la commande => Son type et son texte
  69.             da.SelectCommand = cn.CreateCommand();
  70.             da.SelectCommand.CommandText = sql;
  71.             da.SelectCommand.CommandType = CommandType.Text;
  72.             // On met les donnees dans le dataset
  73.             da.Fill(ds, tableName);
  74.             // On passe la table dans la DataTable pou Organiser les donnees
  75.             dt = ds.Tables[tableName];
  76.             // On la retourne pour travailler avec dans une autre place
  77.             return dt;
  78.         }
  79.     }
  80.  
  81.    
  82. }
  83.  
  84. // Pour avoir une connexion et se communique avec le serveur On doit seulement ajouter la classe a notre projet
  85. // creer un objet de type connection
  86.  
  87. /*------------------------------------------------------------------------------
  88. |       connection cn = new Connection("Nom du Serveur" , "Nom de la BDD" , "True dans le cas de la securité de windows integré");
  89. |      
  90. |       pour passer une requete c est tres simple
  91. |
  92. |       cn.Requete("SELECT * FROM table" , "table");
  93. |      
  94. |       si on veut travailler avec les données On a besoin de creer Une dataTable dt
  95. |       dt = cn.Requete("SELECT * FROM table" , "table");
  96. |       c est tres Simple ;)
  97. |
  98. |______________________________________________________________________________
Advertisement
Add Comment
Please, Sign In to add comment