Bonjour à tous,
J'ai entamé le dictatiel mvc music store et j'ai une petite question sur le code. Mais débutant en MVC il s'agit peut être plus d'une question MVC, je ne sais pas trop
Dans la partie IV on effectue des maj des classes du modèle avant la création de la base avec Entity Framework :
A ce moment la du tuto, je n'ai pas compris pquoi on avait les propriétés GenreId et ArtistId, puisqu'on a déjà des propriétés Genre et Artist. Et "pour voir" je n'ai pas mis ces propriétés Id.
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 namespace MvcMusicStore.Models { public class Album { public int AlbumId { get; set; } public int GenreId { get; set; } public int ArtistId { get; set; } public string Title { get; set; } public decimal Price { get; set; } public string AlbumArtUrl { get; set; } public Genre Genre { get; set; } public Artist Artist { get; set; } } }
Maintenant dans la partie 5, on crée un nouveau contrôleur qui inclût les opérations CRUD sur la classe Album. Lors de la génération automatique des vues, je n'ai pas les champs Genre et Artist qui apparaissent. Et si je rajoute quelque chose du genre suivant dans la vue :
je n'ai pas d'erreur, mais aucune valeur ne s'affiche.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 @Html.DisplayFor(modelItem => item.Artist.Name)
Ma table "Album" de la base de donnée étant bien valorisé avec un id d'artiste et un id de genre.
Je comprends donc que les propriétés GenreId et ArtistId de la classe Album sont importantes mais je ne comprends pas pquoi. J'ai l'impression que les mettre c'est faire de la redondance dans le code ?!
Merci d'avance de vos explications
Partager