TP3 - ASP - Net Core MVC Filtres Jointures
TP3 - ASP - Net Core MVC Filtres Jointures
TP3 - ASP - Net Core MVC Filtres Jointures
TP n°3
Les classes du domaine ou les entités du modèle (Movie et Producer) doivent être comme
suit :
Partie I (Jointure)
Les propriétés encadrées et liées par une flèche n’ont aucune colonne correspondante au
niveau des tables de la BD. C’est pour cela qu’elles sont « virtual ».
Elles s’appellent « Propriétés de Navigation » représentant des pointeurs vers les entités
reliées par une association. Dans notre exemple :
L’entité “Movie” a la propriété “Producer” permettant de naviguer d’un film à
son producteur.
L’entité “Producer” a la propriété “Movies” permettant de naviguer d’un
producteur à la liste de ses films.
Wissem Eltaief 1
TP n°3 Iset Sousse
d. Ajouter un lien hypertexte au niveau de la vue Index de Movie afin de passer à la vue
"MoviesAndTheirProds".
c. Créer une vue vide pour cette action et adapter son contenu afin d’afficher les
données des objets ProdMovie retournées par l’action.
3. Créer une nouvelle action « MyMovies » ne permettant d’afficher que les films d’un
producteur donné par son ID.
b. Créer un lien hypertexte devant chaque producteur afin de lister ses films.
Wissem Eltaief 2
TP n°3 Iset Sousse
« from x in listObjets
where condition
select x ».
1. Développer dans MoviesController, une action SearchByTitle qui permet de filtrer les
films par titre ou par partie d'un titre.
Sa vue est identique à la vue Index.
a. Considérer le critère de recherche par chaine de requête.
b. Que doit-on faire pour éviter cette solution et passer le critère dans l'URL comme
suit :
http://localhost:port/Movie/SearchByTitle/Critere
@using (Html.BeginForm()){
<p> Title: @Html.TextBox("Critère") <br />
<input type="submit" value="Texte_A_Afficher_Sur_Le_Bouton" /></p>
}
sachant que :
- l'instruction Html.BeginForm(), dite Html Helper, sert à créer une balise <form>
sur la page Web. De plus, elle permet à ce formulaire de poster pour lui-même
quand on clique sur le bouton.
- Critère : est le nom du paramètre passé à l'action SearchByTitle.
- Texte_A_Afficher_Sur_Le_Bouton : Le texte du bouton.
4. Développer dans MoviesController, une action SearchBy2 qui permet de faire un double
filtrage des films par genre et par titre en utilisant une liste déroulante (DropDownList)
contenant tous les genres existants + "All", une zone de texte pour la saisie du titre ou
d'une partie du titre, et un bouton « Find ».
Ainsi, il faut commencer par récupérer tous les genres afin de peupler la liste déroulante.
Puis, trouver les films qui répondent aux critères choisis (l'un des deux ou les 2 à la fois).
Wissem Eltaief 3