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 :

[C#] GridView et objet perso


Sujet :

ASP.NET

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 159
    Par défaut [C#] GridView et objet perso
    Bonjour à tous,
    Voila j'ai un petit probleme avec ma gridview. J'ai une requete qui me renvoie un objet perso Commande qui est comme cela en gros
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    public Commande
    {
         public string id_commande{get;set;}
         public Client client_commande{get;set;}
    }
     
    public Client
    {
        public string nom_client{get;set;}
        public string prenom_client{get;set;}
    }
    Bon je simplifie a mort mais ca simplifiera mon explication
    Je souhaite afficher l'id commande et le nom prenom associé a la commande

    Je fais alors ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    maGridView.dataSource = maMethodeQuiRetourneUneListeDeCommande();
    maGridView.DataBind();
    et dans le code aspx dans le gridview
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    <Columns>
        <asp:BoundField DataField="id_commande" />
    </Columns>
    <Columns>
        <asp:BoundField DataField="client_commande.nom_client" />
    </Columns>
    <Columns>
        <asp:BoundField DataField="client_commande.prenom_client" />
    </Columns>
    et cela me retourne une erreur je ne vois pas du tout comment pouvoir acceder a ces données.
    Si quelqu'un pouvait m'aider.

    Merci d'avance

  2. #2
    Membre confirmé Avatar de hmimoud
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2011
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 135
    Par défaut
    Est ce que tu peux écrire l'erreur qui s'affiche ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2009
    Messages : 159
    Par défaut
    Pas de soucis. Voici l'erreur.

    Impossible de trouver un champ ou une propriété 'client_commande.nom_client' dans la source de données sélectionnée.

  4. #4
    Membre confirmé Avatar de hmimoud
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2011
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 135
    Par défaut
    Je crois que tu devra donner plus d'infos surtout sur la méthode qui retourne la liste des commandes et les tables de la BD !

  5. #5
    Membre expérimenté
    Homme Profil pro
    Développeur ASP.Net - disponible pour des missions
    Inscrit en
    Septembre 2008
    Messages
    151
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur ASP.Net - disponible pour des missions

    Informations forums :
    Inscription : Septembre 2008
    Messages : 151
    Par défaut
    Bonjour,

    d'aprés ce que j'ai lu tu ne peux pas le faire avec un boundfield
    http://stackoverflow.com/questions/6...subclass-value

    il faut passer par un champ templatefield

    du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <asp:TemplateField>
            <ItemTemplate>
                <asp:Label Id="lblSubclassVal" runat="server" Text="<%# DataBinder.Eval(Container.DataItem, "SubClass.PropertyName")%>"></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>

  6. #6
    Membre confirmé Avatar de hmimoud
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2011
    Messages
    135
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2011
    Messages : 135
    Par défaut
    Oui c'est exactement ça, tu peux le mettre avec l’assistant, cela se génère automatiquement ! (edit datablinding)

Discussions similaires

  1. Populer COMBOBOX avec des objets persos
    Par MaitreTsiang dans le forum Flex
    Réponses: 3
    Dernier message: 29/09/2008, 11h05
  2. Pagination Gridview et objets métier
    Par bigboss87 dans le forum Framework .NET
    Réponses: 1
    Dernier message: 26/11/2007, 12h22
  3. [Debutant] Ecrire un objet perso dans un fichier
    Par richard_sraing dans le forum C#
    Réponses: 4
    Dernier message: 17/04/2007, 11h11
  4. Enregistrement d'objet persos dans les settings
    Par skylvl dans le forum VB.NET
    Réponses: 1
    Dernier message: 07/03/2007, 14h32
  5. [JTable] afficher objet perso
    Par daedric dans le forum Composants
    Réponses: 11
    Dernier message: 08/02/2006, 20h00

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