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 :

filtrer recherche Asp.Net MVC3 [Débutant]


Sujet :

ASP.NET MVC

  1. #1
    Membre éclairé Avatar de janyoura
    Femme Profil pro
    étudiante ingénierie informatique
    Inscrit en
    Mars 2012
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiante ingénierie informatique

    Informations forums :
    Inscription : Mars 2012
    Messages : 365
    Par défaut filtrer recherche Asp.Net MVC3
    Bonjour,
    j'ai besoin de filtrer la liste des réunions selon les lettres tapés dans l'espace recherche. en suivant le tutoriel fournit par le suite asp.net, j'ai trouvé qu'il faut mettre la fonction assurant la recherche dans ResultView index() mais ensuite j'ai été obligé de changer ViewResult index à ActionResult index() et là la recherche ne fonctionne plus!
    Que faire?
    merci
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
     public ActionResult Index(Int32? id, string sortOrder, string searchString)
            {
                ViewBag.NameSortParm = String.IsNullOrEmpty(sortOrder) ? "Name desc" : "";
                ViewBag.DateSortParm = sortOrder == "Date" ? "Date desc" : "Date";
                var reunions = from s in db.reunions
                               select s;
                if (!String.IsNullOrEmpty(searchString))
                {
                    reunions = reunions.Where(s => s.sujet.ToUpper().Contains(searchString.ToUpper())
                                          );
                }
                switch (sortOrder)
                {
                    case "Name desc":
                        reunions = reunions.OrderByDescending(s => s.sujet);
                        break;
                    case "Date":
                        reunions = reunions.OrderBy(s => s.datereunion);
                        break;
                    case "Date desc":
                        reunions = reunions.OrderByDescending(s => s.datereunion);
                        break;
                    default:
                        reunions = reunions.OrderBy(s => s.sujet);
                        break;
                }
                var viewModel = new MembreIndexData();
                viewModel.Reunions = db.reunions
                    .Include(i => i.membres);
     
     
                if (id != null)
                {
                    ViewBag.ReunionID = id.Value;
                    viewModel.Membres = viewModel.Reunions.Where(i => i.reunionID == id.Value).Single().membres;
                }
                return View(viewModel);
            }

  2. #2
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Avril 2013
    Messages
    76
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2013
    Messages : 76
    Par défaut
    Pourquoi avoir passer le type de retour de ton action de ViewResult à ActionResult?

    Sachant qu'un ViewResult est un ActionResult.
    Mais ActionResult n'est pas une vue, elle n'implémente pas IView qui est utiliser pour le rendu d'une vue.

  3. #3
    Membre éclairé Avatar de janyoura
    Femme Profil pro
    étudiante ingénierie informatique
    Inscrit en
    Mars 2012
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiante ingénierie informatique

    Informations forums :
    Inscription : Mars 2012
    Messages : 365
    Par défaut
    Citation Envoyé par g.Arnaud Voir le message
    Pourquoi avoir passer le type de retour de ton action de ViewResult à ActionResult?

    Sachant qu'un ViewResult est un ActionResult.
    Mais ActionResult n'est pas une vue, elle n'implémente pas IView qui est utiliser pour le rendu d'une vue.
    Dans le tutoriel on a demandé de changer ViewResult à ActionResult pour pouvoir faire l'autre traitement (affichage des membres d'une réunion).

  4. #4
    Membre émérite
    Avatar de dkmix
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    619
    Détails du profil
    Informations personnelles :
    Localisation : Jamaïque

    Informations forums :
    Inscription : Septembre 2007
    Messages : 619
    Par défaut
    bonjour,
    Je ne pense pas que le pb vienne de ViewResult ou ActionResult.
    Etes vous sur de passer dans l'action "Index" ? si oui, vérifiez avec le debug le contenu de votre model de vue. (Si vous utilisez EF vous pouvez forcez le chargement des variables en ajoutant ToList() pour le debug)

    A priori vous utilisez une variable "reunion" mais vous affectez "db.reunion" au modele de vue.

  5. #5
    Membre éclairé Avatar de janyoura
    Femme Profil pro
    étudiante ingénierie informatique
    Inscrit en
    Mars 2012
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiante ingénierie informatique

    Informations forums :
    Inscription : Mars 2012
    Messages : 365
    Par défaut
    Citation Envoyé par dkmix Voir le message
    bonjour,
    Je ne pense pas que le pb vienne de ViewResult ou ActionResult.
    Etes vous sur de passer dans l'action "Index" ? si oui, vérifiez avec le debug le contenu de votre model de vue. (Si vous utilisez EF vous pouvez forcez le chargement des variables en ajoutant ToList() pour le debug)

    A priori vous utilisez une variable "reunion" mais vous affectez "db.reunion" au modele de vue.
    Le problème consiste à ce qu'il faut que je retourne view(reunion.ToList()) afin d'afficher le résultat de la recherche cependant je dois aussi retourner ViewModel qui concerne l'affichage des membres inscrits dans la réunion..c'est comme si les 2 fonctionnalités ne doivent pas être dans la même page (index). Que faire alors?
    Merci

  6. #6
    Membre émérite
    Avatar de dkmix
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    619
    Détails du profil
    Informations personnelles :
    Localisation : Jamaïque

    Informations forums :
    Inscription : Septembre 2007
    Messages : 619
    Par défaut
    En asp mvc foretment typé : 1 vue -> 1 modele de vue.

    Dans votre exemple, pour retourner une liste de "reunion", il faut que cette liste appartiennent au modele de vue de la page ("viewModel" je suppose)
    Vous devez donc faire quelquechose comme

    ...
    viewModel.Reunions = db.reunions.Include(i => i.membres);
    viewModel.Reunions = reunions
    ...

  7. #7
    Membre éclairé Avatar de janyoura
    Femme Profil pro
    étudiante ingénierie informatique
    Inscrit en
    Mars 2012
    Messages
    365
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : étudiante ingénierie informatique

    Informations forums :
    Inscription : Mars 2012
    Messages : 365
    Par défaut
    Citation Envoyé par dkmix Voir le message
    En asp mvc foretment typé : 1 vue -> 1 modele de vue.

    Dans votre exemple, pour retourner une liste de "reunion", il faut que cette liste appartiennent au modele de vue de la page ("viewModel" je suppose)
    Vous devez donc faire quelquechose comme

    ...
    viewModel.Reunions = db.reunions.Include(i => i.membres);
    viewModel.Reunions = reunions
    ...
    Merci ça a résolu le problème

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

Discussions similaires

  1. ASP.NET MVC3 : deuxième Release Candidate
    Par Hinault Romaric dans le forum ASP.NET MVC
    Réponses: 12
    Dernier message: 24/03/2011, 15h36
  2. Réponses: 9
    Dernier message: 24/03/2011, 15h33
  3. La RC2 de ASP.NET MVC3 disponible
    Par Hinault Romaric dans le forum Actualités
    Réponses: 0
    Dernier message: 13/12/2010, 10h30
  4. ASP.NET MVC3 : deuxième Release Candidate
    Par Hinault Romaric dans le forum Actualités
    Réponses: 1
    Dernier message: 13/12/2010, 10h30
  5. résultat recherche asp.net
    Par christi dans le forum ASP.NET
    Réponses: 4
    Dernier message: 25/01/2007, 11h08

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