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 MVC Discussion :

Multiple Models in the same View


Sujet :

ASP.NET MVC

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2010
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2010
    Messages : 9
    Points : 14
    Points
    14
    Par défaut Multiple Models in the same View
    Bonjour

    SVP j'ai un problème au niveau d'ASP.net mvc 3 !!

    Comment je peux faire appelle à plusieurs model dans la même vue ??

    J'ai trouvé une solution avec @Html.RenderPartial mais j'ai pas compris comment s'en servir avec ??

    Merci d'avance

  2. #2
    Expert éminent sénior

    Avatar de Philippe Vialatte
    Homme Profil pro
    Architecte technique
    Inscrit en
    Juillet 2004
    Messages
    3 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juillet 2004
    Messages : 3 029
    Points : 12 465
    Points
    12 465
    Par défaut
    RenderPartial fonctionne "comme" un user control, il ne te permettra pas de passer des modèles différents, il faudra l'appeler en lui passant les données que tu veux qu'il utilise

    Par contre, avec RenderAction, tu devrais pouvoir appeler une action d'un autre controlleur, et lui demander d'aller chercher d'autres données si nécessaires

    Tu as un embryon d'exemple ici: http://nicolasesprit.developpez.com/...asp-net-mvc-3/

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    163
    Détails du profil
    Informations personnelles :
    Localisation : Maroc

    Informations forums :
    Inscription : Octobre 2010
    Messages : 163
    Points : 58
    Points
    58
    Par défaut
    Salut,
    en fait ce que je fais c'est de créer mon ViewModel:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public class MonViewModel
        {
            public IEnumerable<Modele1> Modele1s { get; set; }
            public IEnumerable<Modele2> Modele2s { get; set; }
        }
    et mon action:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public ViewResult Index()
            {
                var viewModel = new MonViewModel();
                viewModel.Modele1s = db.MaTable1;
                viewModel.Modele2s = db.MaTable2;
                return View(viewModel);
            }
    et ma Vue:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    @model MVC3Application.Models.MonViewModel
     @foreach (var item in Model.Modele1s)
     {
         @item.propriété_x<br />
        @item.propriété_y<br />
     }
      @foreach (var item in Model.Modele2s)
     {
        @item.propriété_z<br />
     }
    voilà et ça marche pour moi.

    Bonne journée,
    pacifiquement.

Discussions similaires

  1. Réponses: 0
    Dernier message: 09/06/2013, 11h26
  2. Réponses: 2
    Dernier message: 27/07/2007, 09h21
  3. Query, sum over fields that have the same ID as the active field
    Par piers dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 28/04/2007, 11h33
  4. An entry with the same key already exists: qu'est ce?
    Par cortex024 dans le forum ASP.NET
    Réponses: 2
    Dernier message: 04/04/2007, 16h49
  5. Réponses: 4
    Dernier message: 29/09/2004, 09h05

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