EntityFramework et relation
Bonjour,
Je me permets d'écrire sur le forum afin d'en savoir plus sur le sujet des relations avec EF.
Par exemple je crée une relation Commande et Affaire.
J'ai donc accès à Commande.Affaire car j'ai la propriété de navigation mais je dispose aussi de Commande.IDAffaire qui correspond à la relation (clé étrangère).
Lorsque je veut modifier cette relation je peux modifier l'IDAffaire et la variable Commande.Affaire.
Par exemple :
Code:
1 2
| Commande.Affaire = new Affaire ("test"); // HasChange est à true
Commande.IDAffaire = 10; // HasChange est à false |
Juste que mon DataContext ne se comporte pas de la même façon en fonction du choix effectuer et je ne comprends pas bien pourquoi.
Ma variable HasChanges return true (dans le cadre de modif de Commande.Affaire) ou non (dans le cadre de modif de Commande.IDAffaire)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
public bool HasChanges
{
get
{
int Count =
ObjectStateManager.GetObjectStateEntries(System.Data.EntityState.Added).Count()+
ObjectStateManager.GetObjectStateEntries(System.Data.EntityState.Deleted).Count()+
ObjectStateManager.GetObjectStateEntries(System.Data.EntityState.Modified).Count();
return Count > 0;
}
} |
Après je n'ai peut-être pas tout bien lu dans le code qui m'a été fourni...
De plus lorsque je fais .Save cette variable est-elle censé me retourné true ou false ? (je pense false)
Pour faire plus global quelle est la différence entre modifier Commande.Affaire ou Commande.IDAffaire ?