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 :

transformer un bloc de code en classe ou fonction


Sujet :

C#

  1. #1
    Membre averti Avatar de solo190
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2007
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Cameroun

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 412
    Points : 321
    Points
    321
    Par défaut transformer un bloc de code en classe ou fonction
    bonjour a tous,
    je suis entrain de developper une petite application en c#, a ce moment je dois faire des selection dans une bd sql et afficher le resultat dans un datagrid, mais je suis confromnté a un problème, j'aimerais transformer ce bloc de code qui marche très bien en classe ou fonction. là a chaque moment que j'aurais un affichage a faire dans mon datagrid, je n'aurais qu'a appelé cette classe.
    voici le bloc de code
    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
     chaine_connexion = ConfigurationManager.AppSettings["MaConnection"];
                 SqlConnection connexion = new SqlConnection(chaine_connexion);
                 // SqlCommand CmdSelect = new SqlCommand(" SELECT CategoryId, CategoryName, Description FROM CATEGORIES ", chaine_connexion);
                 SqlCommand CmdSelect = new SqlCommand(" Select	libelle_message, Message, convert(varchar(100),date_message,103) as Date_Mail ," +
                                                        " convert(varchar(30),heure_message,108) as heure_mail  , frequence_message ,	Date_Fixe From mail ", connexion);
                 CmdSelect.CommandType = System.Data.CommandType.Text;
                 //	//  Pour une procedure stockee nommée SP_SELECT_CATEGORIES (par exemple)
                 //	    CmdSelect = new SqlCommand("SP_SELECT_CATEGORIES", MaConnection);
                 //		CmdSelect.CommandType = System.Data.CommandType.StoredProcedure;
                 //on utilise le dataadapter pour remplir le dataset
                 //on attribue la command au SelectCommand
     
                 SqlDataAdapter  MonDataAdapter = new SqlDataAdapter(CmdSelect);
                 MonDataAdapter.UpdateCommand = CmdUpdate;
                 MonDataAdapter.InsertCommand = CmdInsert;
                 MonDataAdapter.DeleteCommand = CmdDelete;
     
     
                 //on vide le dataset
                 ds.Clear();
                // ds.Dispose();
                // ds.Tables.Add("Liste_Categorie");
     
                 //on affecte le datasource du datagrid afin de visualiser les données
                 DgResultat.DataSource = ds.Tables["Liste_Categorie"];
     
                 //On rempli le dataset
                 MonDataAdapter.Fill(ds.Tables["Liste_Categorie"]);
                 CM = (CurrencyManager)BindingContext[ds.Tables["Liste_Categorie"]];
                 //on affecte le datasource du datagrid afin de visualiser les données
                 DgResultat.DataSource = ds.Tables["Liste_Categorie"];
    voici comment j'ecris la classe mais elle génére des erreurs

    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
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.Timers;
    using System.Data.SqlClient;
    using System.Configuration;
    using System.Collections;
     
     
    namespace Contact_Client
    {
        class insert_update_select_delete
        {
            // declaration des variables
            private SqlCommand CmdSelect, CmdInsert, CmdUpdate, CmdDelete;
            string chaine_connexion = null;
            private SqlDataAdapter MonDataAdapter;
            //Le Dataset
            public DataSet ds = new DataSet();
            private CurrencyManager CM;
     
            public string resultat_selection;
     
     
     
            public void resultat_select()
            {
     
                chaine_connexion = ConfigurationManager.AppSettings["MaConnection"];
                SqlConnection connexion = new SqlConnection(chaine_connexion);
                // SqlCommand CmdSelect = new SqlCommand(" SELECT CategoryId, CategoryName, Description FROM CATEGORIES ", chaine_connexion);
                SqlCommand CmdSelect = new SqlCommand(" Select	libelle_message, Message, convert(varchar(100),date_message,103) as Date_Mail ," +
                                                       " convert(varchar(30),heure_message,108) as heure_mail  , frequence_message ,	Date_Fixe From mail ", connexion);
                CmdSelect.CommandType = System.Data.CommandType.Text;
                //	//  Pour une procedure stockee nommée SP_SELECT_CATEGORIES (par exemple)
                //	    CmdSelect = new SqlCommand("SP_SELECT_CATEGORIES", MaConnection);
                //		CmdSelect.CommandType = System.Data.CommandType.StoredProcedure;
                //on utilise le dataadapter pour remplir le dataset
                //on attribue la command au SelectCommand
     
                SqlDataAdapter MonDataAdapter = new SqlDataAdapter(CmdSelect);
                MonDataAdapter.UpdateCommand = CmdUpdate;
                MonDataAdapter.InsertCommand = CmdInsert;
                MonDataAdapter.DeleteCommand = CmdDelete;
     
     
                //on vide le dataset
                ds.Clear();
                // ds.Dispose();
                ds.Tables.Add("Liste_Categorie");
     
                //on affecte le datasource du datagrid afin de visualiser les données
                //DgResultat.DataSource = ds.Tables["Liste_Categorie"];
     
                //On rempli le dataset
                MonDataAdapter.Fill(ds.Tables["Liste_Categorie"]);
                CM = (CurrencyManager)(BindingContext[ds.Tables["Liste_Categorie"]]);
     
     
                //on affecte le datasource du datagrid afin de visualiser les données
                DgResultat.DataSource = ds.Tables["Liste_Categorie"];
            }
        }
    }
    s'il vous plait les gars donner moi un coup de main
    www.etech-keys.com
    https://sms.etech-keys.com

    le boiteux qui suit le chemin devance le coureur qui s'en écarte .

  2. #2
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Points : 2 439
    Points
    2 439
    Par défaut
    Voici comment j'ecris la classe mais elle génére des erreurs
    Peux-tu donner la liste de erreurs.

  3. #3
    Membre averti Avatar de solo190
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Avril 2007
    Messages
    412
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Cameroun

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

    Informations forums :
    Inscription : Avril 2007
    Messages : 412
    Points : 321
    Points
    321
    Par défaut
    'System.Windows.Forms.BindingContext' est un 'type' mais est utilisé comme une 'variable'
    Le nom 'DgResultat' n'existe pas dans le contexte actuel
    voici les deux messages d'erreur.
    Merci
    www.etech-keys.com
    https://sms.etech-keys.com

    le boiteux qui suit le chemin devance le coureur qui s'en écarte .

  4. #4
    Membre actif Avatar de brachior
    Homme Profil pro
    Doctorant
    Inscrit en
    Mai 2011
    Messages
    190
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Doctorant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mai 2011
    Messages : 190
    Points : 293
    Points
    293
    Par défaut
    Dans le code que tu veux réutiliser en temps que méthode,
    Il y a des variables dont tu ne nous montres pas leur déclaration.

    Si tu copie/colle purement et simplement ce que tu nous as écrit,
    Alors oui, il y aura des erreurs de compilation, car il manque des déclarations de variables.

    Les variables doivent :
    Soit faire partie de la méthode en temps que variables locales et transmises en retour ...
    (dans le cas contraire, elles ne seront pas utilisables de l'extérieur)
    Soit faire partie de la classe en temps que champs
    (dans ce cas, il faut des accesseurs)

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/04/2006, 21h02
  2. Réponses: 6
    Dernier message: 22/09/2005, 16h59
  3. [D7] Reprise d'un code D4 (Classe TAdvExcel inconnu)
    Par plante20100 dans le forum Composants VCL
    Réponses: 4
    Dernier message: 29/08/2005, 09h20
  4. [DC] Transformer un MLD en Diagramme de Classes
    Par lee Mythe dans le forum Diagrammes de Classes
    Réponses: 10
    Dernier message: 07/10/2004, 13h25
  5. [VB6] mise en commentaire d'un bloc de code
    Par JuanDeLaPlaya dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 30/04/2003, 15h05

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