J'obtiens cette erreur quand je GetById() sur une entité, puis définissez la collecte de l'enfant entités à ma nouvelle liste qui vient de la MVC vue.
L'opération a échoué: Le la relation ne peut pas être changé parce que l'un ou plusieurs de la clé étrangère les propriétés n'est pas les valeurs null. Lorsqu'un modification est apportée à une relation, le liées clé étrangère propriété est définie à une valeur null. Si la clé étrangère ne pas en charge les valeurs null, une nouvelle la relation doit être défini, l' clé étrangère de la propriété doit être attribué une autre valeur non nulle, ou la sans rapport avec l'objet doit être supprimé.
Je ne comprends pas très bien cette ligne:
La relation ne peut pas être changé parce que l'un ou plusieurs de la clé étrangère les propriétés n'est pas les valeurs null.
Pourquoi voudrais-je changer la relation entre les 2 entités? Il doit rester le même tout au long de la durée de vie de l'ensemble de l'application.
Le code de l'exception se produit sur est simple affectation modifiée classes enfant dans une collection pour les parents de la classe. Ce serait espérons accueillir de retrait des enfants des classes, l'ajout de nouveaux et de modifications. J'aurais pensé à Entity Framework gère cela.
Les lignes de code peut être distillé:
var thisParent = _repo.GetById(1);
thisParent.ChildItems = modifiedParent.ChildItems();
_repo.Save();