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 actif 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
    Points : 279
    Points
    279
    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);
            }
    "Scientists dream about doing great things. Engineers do them.”

    La réussite après tant de travail est un sentiment à vivre

    Si ton message est résolu, il y a un bouton qui est fait pour ça :
    Il se trouve tout en bas de la conversation !

    N'oublie pas que si ce message t'as aidé, tu peux voter pour lui en utilisant

  2. #2
    Membre habitué
    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
    Points : 143
    Points
    143
    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 actif 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
    Points : 279
    Points
    279
    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).
    "Scientists dream about doing great things. Engineers do them.”

    La réussite après tant de travail est un sentiment à vivre

    Si ton message est résolu, il y a un bouton qui est fait pour ça :
    Il se trouve tout en bas de la conversation !

    N'oublie pas que si ce message t'as aidé, tu peux voter pour lui en utilisant

  4. #4
    Membre éprouvé
    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
    Points : 924
    Points
    924
    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 actif 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
    Points : 279
    Points
    279
    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
    "Scientists dream about doing great things. Engineers do them.”

    La réussite après tant de travail est un sentiment à vivre

    Si ton message est résolu, il y a un bouton qui est fait pour ça :
    Il se trouve tout en bas de la conversation !

    N'oublie pas que si ce message t'as aidé, tu peux voter pour lui en utilisant

  6. #6
    Membre éprouvé
    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
    Points : 924
    Points
    924
    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 actif 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
    Points : 279
    Points
    279
    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
    "Scientists dream about doing great things. Engineers do them.”

    La réussite après tant de travail est un sentiment à vivre

    Si ton message est résolu, il y a un bouton qui est fait pour ça :
    Il se trouve tout en bas de la conversation !

    N'oublie pas que si ce message t'as aidé, tu peux voter pour lui en utilisant

+ 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