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 :

[MVC] Model Binding : cherche renseignements


Sujet :

ASP.NET

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    837
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Février 2003
    Messages : 837
    Par défaut [MVC] Model Binding : cherche renseignements
    Bonjour à tous,

    Je suis actuellement en train de voir dans quelle mesure je peux utiliser le pattern MVC avec des objets complexes à binder sur la vue.
    En fait, sur certaines vues, j'ai plusieurs objets complexes, voici un exemple :
    1) une dropdownlist bindée sur un IList<Categorie>
    2) une dropdownlist bindée sur un IList<Status>
    3) Le model bindé sur un produit dont voici quelques exemples de propriétés :
    - Il y a du string, de l'int, bref de la donnée de base
    - Il y a des objets issus de mon domaine (ex: Categorie, Status...)
    - Il y a des collections d'objets issus du domaine

    Donc, pour faciliter le binding, j'ai commencé à faire quelques recherches et voici ce que j'ai pu rencontrer :

    1) on peut facilement binder un objet simple (qui ne contient que des propriétés de types de base comme string, int...) en changeant le parametre d'une action pour y mettre à la place "Product monproduit". Le binding se fait tout seul et remplit monproduit avec les données issues du formulaire.

    2) On peut utiliser le pattern ViewModel et ajouter un intermédiaire "viewmodel" entre le(s) DTO(s) et la vue.

    3) enfin, j'ai pu voir quelques petites choses sur l'implémentation de custom modelbinders. Mais alors là,niveau doc y'a pas grand chose de convaincant... donc je n'arrive pas à visualiser ma problématique au travers des divers blogs que j'ai vus.

    Ma question est la suivante :
    Que faites vous, en MVC, pour utiliser vos objets (complexes bien entendu) dans vos vues ?

    Merci d'avance
    @ bientot

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2003
    Messages
    837
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations forums :
    Inscription : Février 2003
    Messages : 837
    Par défaut
    Découverte de la soirée...attention les yeux,ça frise le ridicule tellement la réponse est simple...

    Lorsque l'on utilise le binding en MVC, avec des objets complexes (genre la classe produit a une propriété de type catégorie qui elle meme à des propriétés Id et NomCategorie), pour faire au plus simple, il suffit de faire un binding textuel comme ceci :

    En général pour les propriétés du model on utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%= Html.Textbox("NomProduit") %>
    Eh bien pour une sous propriété (par exemple un dropdown qui servirait à selectionner la catégorie du produit) il suffit tout simplement de faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <%= Html.Dropdownlist("Categorie.Id", Laliste de catégories...)%>
    Categorie.Id indique qu'il faudra instancier un objet de type Categorie et lui mettre la valeur sélectionnée dans sa propriété Id.
    Ainsi, dans une methode Create il suffit d'avoir la définition suivante :

    public ActionResult Create(Produit p)

    Et là comme par magie, le produit p sera rempli, y compris l'id de la catégorie choisie ! C'est vraiment magique MVC

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

Discussions similaires

  1. Qt : MVC Model & Vue : Sudoku
    Par Zenol dans le forum Débuter
    Réponses: 3
    Dernier message: 19/07/2008, 19h24
  2. [Spring MVC] <spring:bind sur combobox
    Par coyote999 dans le forum Spring Web
    Réponses: 2
    Dernier message: 28/02/2008, 14h32
  3. Cherche renseignement réseau
    Par Nitro386 dans le forum Projets
    Réponses: 1
    Dernier message: 07/01/2008, 12h46
  4. [Spring MVC] spring bind tag
    Par Socrate93 dans le forum Spring Web
    Réponses: 2
    Dernier message: 19/09/2007, 12h18
  5. [DB2] Newbie cherche renseignements !
    Par platinum07 dans le forum DB2
    Réponses: 1
    Dernier message: 06/12/2006, 19h29

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