Bonjour,
J'ai crée un type VM_Livre ainsi
Comme vous pouvez le constater, ce type est composé de deux properties rayon de type VM_Rayon et auteur de type VM_auteur.
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 using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.ComponentModel.DataAnnotations; namespace e_bibliotheque_MVC.Models { public class VM_Livre { [Key] public int Id_Livre { get; set; } [Required(ErrorMessage = "Veuillez saisir un titre")] public string Title { get; set; } public DateTime ParutionDate { get; set; } [Required(ErrorMessage = "Veuillez saisir un auteur")] public VM_Auteur auteur { get; set; } public VM_Rayon rayon { get; set; } public byte[] livreImage { get; set; } public string livreImageType { get; set; } public override string ToString() { return "{Title} {ParutionDate.ToString() {Rayon}"; } } }
un VM_Rayon est ainsi defini
Quand la BDD a été créée avec l'initializer, j'ai obtenu une table VM_Auteur avec un champ rayon_Id_rayon et un champ rayon_NomRayon(voir capture ecran ci-jointe)
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 using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace e_bibliotheque_MVC.Models { public class VM_Rayon { public int Id_rayon { get; set; } public string NomRayon { get; set; } public override string ToString() { return $"{Id_rayon} {NomRayon.ToString()} "; } } }
Or cela contredit les regles de contraintes d'integrité de BDD:je ne dois avoir dans la table VM_Livre qu'un champ rayon_Id_rayon FK qui fait le lien avec le champ Id_Rayon de la table VM_Rayon.
Comment modifier ceci sans avoir de problème de récuperation de données dans mes vues .cshtml
Merci beaucoup de votre aide.
Bien cordialement.
Nathalie Harbonne
Partager