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 :

problème de GridView


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 49
    Par défaut problème de GridView
    Bonjour,
    je débute depuis une semaine sur l'asp.net, mon problème réside dans un GridView.

    je souhaiterai tous simplement y afficher le resultat d'une requête (SELECT *). Grâçe à Visual Studio, j'ai pu voir que ma connection au serveur (MySQL en local) et que ma requete fonctionne parfaitement.
    Cependant le GridView m'affiche :

    ****************
    *RowError*HasErrors*
    ****************

    De plus, le GridView affiche 3 lignes vides (a part l'entête), ce qui correspond au nombre de resultat de ma requete.
    Donc le probleme réside dans mes colonnes qui ne s'affiche pas.
    Voici le code de mon GridView (ya pas plus simple) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <asp:GridView ID="gv_operateur" runat="server" DataSourceID="objRes" 
             style="margin-left: 40px; margin-top: 40px">
        </asp:GridView>
        <asp:ObjectDataSource ID="objRes" runat="server" SelectMethod="MetodListOp" 
             TypeName="classCommandSql"></asp:ObjectDataSource>
    Si quelqu'un aurait une petite idée !!!
    Merci d'avance.

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    360
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 360
    Par défaut
    tu peux essayer peut être de rajouter la propriété AutoGenerateColumns=true dans ton gridview.

    Sinon tu peux définir le template de tes colonnes. Regarde ici http://msdn.microsoft.com/en-us/library/aa479353.aspx

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 49
    Par défaut
    Voila "MetodListOp" mais c'est pas tellement important vu que ma requete fonctionne (je pense).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     MySQLConnection objConn = new MySQLConnection(new MySQLConnectionString("localhost", "suiviprod", "root", "mdp").AsString);           
                objConn.Open();
                //commande sql
                MySQLCommand MCO = new MySQLCommand("Select * from OPERATEUR", objConn);           
                MySQLDataReader objRes;
                objRes = MCO.ExecuteReaderEx();
     
                return objRes;


    j'ai déjà essayer ça et c'est le même resultat.

    J'ai tester avec des <TemplateFields> et des <ItemTemplate> en ecrivant en dur dans les entête de colonnes, cette fois les entête sont remplis (normal) et les cellules sont vides. Et j'ai toujours "RowError" et "HasErrors" dans les deux dernieres colonnes.

    Si je mais AutoGenerateColumns=false, le "RowError""HasError" disparait mais mes cellules sont toujours vide.

    J'espere avoir été claire.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 49
    Par défaut
    J'ai tenter une autre méthode.

    Voila ma classe "classCommandSql" avec ma methode "MetodListOp"
    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
    public class classCommandSql
    {
        public MySQLConnection objRes = null; 
     
    //***************Liste des operateur************************
            public object MetodListOp()
            {     
                MySQLConnection objConn = new MySQLConnection(new MySQLConnectionString("localhost", "suiviprod", "root", "mdp").AsString);           
                objConn.Open();
                //commande sql
                MySQLCommand MCO = new MySQLCommand("Select * from OPERATEUR", objConn);           
                MySQLDataReader objRes;
                objRes = MCO.ExecuteReaderEx();
     
                return objRes;
            }

    Et là ma page asp, dans Page_Load
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    classCommandSql c = new classCommandSql();                                 
                    gv_operateur.DataSource = c.MetodListOp();
                    gv_operateur.DataBind();
    "gv_operateur" c'est l'id de mon GridView

    Malheureusement, même resultat

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Par défaut
    ExecuteReaderEx() te retourne bien un object SqlDataReader ?

    Bind Data Reader

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    49
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 49
    Par défaut
    J'utilise le driver "MySQLDriverCS", donc il faut que j'utilise des propriété MySQL. Non?

  7. #7
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Ca n'a pas vraiment de sens de renvoyer un DataReader... ObjectDataSource utilise la réflexion pour déterminer les propriétés de l'objet à afficher. Mais dans un DataReader, les valeurs des champs ne sont pas des propriétés, ce sont des éléments auxquels on accède via un accesseur. ObjectDataSource sert plutôt à afficher des objets métier. Pour afficher des données qui viennent directement de la BDD, utilise plutôt SqlDataSource

  8. #8
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juin 2006
    Messages : 61
    Par défaut
    Bonjour,

    objRest dans la méthode MetodListOp() est un sqlReader.
    Il faudrait tester si il contient bien les données :
    http://msdn.microsoft.com/fr-fr/libr...yz(VS.80).aspx
    Si le GridView n'a rien je pense que l'erreur vient en fait de là.

  9. #9
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Par défaut
    Comme dit Tomlev, utiliser un SqlDataReader juste pour faire un bind de la gridview, c'est un peu étrange.
    Maintenant, tu en as peut etre besoin vu que tu retournes object, peut etre vas tu utiliser cette méthode pour faire autre chose.

    Ou alors, tu peux remplir un dataSet et faire in bind très facilement avec cela.

  10. #10
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    elle ressemble à quoi ta méthode MetodListOp ?

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

Discussions similaires

  1. Problème avec gridview
    Par hugo7 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 26/11/2008, 14h45
  2. Problème avec Gridview SelectedRow
    Par yass dans le forum ASP.NET
    Réponses: 2
    Dernier message: 09/07/2008, 11h55
  3. [2.0] Problème de GridView
    Par CUCARACHA dans le forum ASP.NET
    Réponses: 3
    Dernier message: 09/05/2008, 13h43
  4. [ASP.NET] Problème de gridview
    Par castaka dans le forum ASP.NET
    Réponses: 2
    Dernier message: 11/10/2007, 16h23
  5. Problème taille gridview quand update
    Par lolymeupy dans le forum ASP.NET
    Réponses: 0
    Dernier message: 16/08/2007, 10h40

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