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

Framework .NET Discussion :

Problème avec le databinding et les listes conventionnelles comme l'arrayList


Sujet :

Framework .NET

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2008
    Messages : 7
    Points : 5
    Points
    5
    Par défaut Problème avec le databinding et les listes conventionnelles comme l'arrayList
    Bonjour à vous,

    Voilà, je dispose d’une classe .cs associée à une page aspx intitulée recherche :

    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
    public partial class recherche : System.Web.UI.Page
    {
        private AutoEcoleControleur aec;
        private ArrayList listAutoEcole;
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                aec = new AutoEcoleControleur();
                listAutoEcole = aec.chargerListAutoEcole();
                ddlRaisonSociale.DataSource = listAutoEcole;
                ddlRaisonSociale.DataValueField = "raisonS";
                ddlRaisonSociale.DataBind();
            }
     
     
        }
        protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
        {
     
        }
    Je reçois donc une liste d’objet « AutoEcoleBean » intitulée « listAutoEcole » que je souhaite charger dans une dropDownList « ddlRaisonSociale » et n’afficher que la raison sociale. « listAutoEcole » est correctement initialisée (Contrôler via debugger).
    Voici un extrait de ma classe « AutoEcoleBean » :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    public class AutoEcoleBean
    {private String raisonS;
    public String getRaisonS()
    {
       return raisonS;
    }
    public void setRaisonS(String raisonS)
    {
       this.raisonS = raisonS;
    }
    Mon problème : Quand je lance mon application, le système me donne une erreur : DataBinding : 'AutoEcoleBean' ne comporte pas de propriété appelée 'raisonS'.
    Pourtant ma classe de référence contient bel et bien des assesseurs. J’ai essayé en mode graphique en déclarant comme source de donnée un objet ArrayList retourner par ma méthode « chargerListAutoEcole » de « AutoEcoleControleur ». Mais quand je fais cela, il ne voit pas de propriété à binder. J’ai donc utilisé une liste générique (Pour avoir quelque chose de fortement typé), même histoire.
    J’ai néanmoins trouvé une solution avec un objet « dataSet ». Mais l’utilisation de ceci m’ennuie pour 2 raisons :
    - La vue et le contrôleur deviennent trop fortement couplés.
    - La mise à jour et l’insertion de données via le DataSet sont vraiment pas ce qu’il y a de plus simple.
    Je sollicite donc vos conseils qui me permettraient de faire du databinding sans devoir utiliser ce dataset mais des listes conventionnelles. Je vous remercie d’avance pour vos propositions et vos réponses.

    Fred.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Août 2003
    Messages
    835
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2003
    Messages : 835
    Points : 1 046
    Points
    1 046
    Par défaut
    Salut,

    J'ai l'impression que dans ta classe AutoEcoleBean tu définis toi même tes propriétés (c'est à dire que tu écris des méthodes get et set à la main, comme on ferait en java plutot) alors qu'en .net il existe des propriétés "explicites" (c'est à dire que le langage comprend ce qu'est une propriété, c'est un "objet" particulier) et c'est ce qu'il faut utiliser:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    public class AutoEcoleBean
    {private String raisonS;
    public String RaisonS()
    {
       get {return raisonS;}
       set { this.raisonS= value;}
    }

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2008
    Messages : 7
    Points : 5
    Points
    5
    Par défaut Merci c'est en ordre !
    Salut,

    C'est parfait. Tu supprimmes justes les 2 parenthèses après la déclaration de la propriété et ça marche.
    Je pensais bien que je devais pas être loin. C'est ça de faire que du java.

    Un grand merci.

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

Discussions similaires

  1. Problème avec la fonction pow(les puissance)
    Par Clément76 dans le forum C
    Réponses: 10
    Dernier message: 04/10/2006, 12h44
  2. Réponses: 2
    Dernier message: 02/08/2006, 16h46
  3. [Tableaux] Problème avec un array et les pseudo frame
    Par azerty53 dans le forum Langage
    Réponses: 6
    Dernier message: 10/05/2006, 14h57
  4. Problème avec l'unicode et les exceptions
    Par Rafy dans le forum C++
    Réponses: 5
    Dernier message: 07/02/2006, 00h52
  5. problème avec strtok pour récupérer les vides
    Par manikou dans le forum MFC
    Réponses: 4
    Dernier message: 02/06/2005, 20h08

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