EDIT:MVC3 - collection virtuelle automatique (SaveChanges de base de données)
J'ai trouvé le problème de savoir pourquoi il ne voit pas les changements j'ai changé l'objet qui est lié avec ModelBinder. Dans ce cas, il n'est pas suivi par le contexte.
Bonjour
J'ai un problème avec ICollections virtuels dans ma demande. Est-il correct que EF sauvegarde automatiquement les modifications que vous apportez aux entités? Par exemple, si j'ajoute un élément à une liste (ajouter un joueur à une équipe) cela fonctionnera sans utiliser de dépôt et de base de données pour l'enregistrer dans la base de données?
J'ai quelque chose comme ça
public int RayonId { get; set; }
public String Rayonnaam { get; set; }
public virtual ICollection<Duivenmelker> Duivenmelkers { get; set; }
public Rayon()
{
Duivenmelkers = new List<Duivenmelker>();
}
public void AddMelker(Duivenmelker m)
{
Duivenmelkers.Add(m);
}
Le code ci-dessus modifie la liste que localement. Mais n'enregistre pas les modifications apportées à la base de données. Je peux appeler un référentiel pour ajouter un nouvel objet directement à la base de données, mais ce n'est pas la bonne façon de procéder.
Qu'est-ce qui pourrait éventuellement être mauvais et qui ne fonctionne pas? * *
savechanges retour 0 (aucun changement ne pense fait)
J'ai maintenant ajouté
c.Vluchten.Attach(v);
c.Entry(v).State = EntityState.Added;
Cela fonctionne apparemment, encore je ne sais pas pourquoi l'EF ne voit pas les changements sans lui dire explicitement
Si vous avez trouvé le problème et une solution pour ** cette question ** écrivez-nous en réponse et acceptez votre propre réponse. * "Maintenant une nouvelle question ..." * devrait vraiment être une ** nouvelle question **. – Slauma