J'ai une application qui utilise Entity Framework Code First. J'essaie d'écrire ma couche d'accès aux ressources. J'ai plusieurs objets qui ont tous des tables de base de données séparées et beaucoup de relations d'objets. Quelqu'un peut-il me diriger vers un exemple à jour de méthodes CRUD avec des objets connexes? Tout ce que j'ai trouvé utilise une version plus ancienne (j'utilise DbContext, pas ObjectContext, etc.) et j'ai du mal à l'écrire moi-même.Entity Framework: Joindre des objets connexes et d'autres gestion d'état
Par exemple, je travaille actuellement sur un objet avec une relation parent-enfant avec lui-même. J'essaie d'écrire la méthode Create. Si j'utilise context.Objects.Add(newObject)
alors tous les objets enfants ont aussi leur état changé en Ajouté, ce qui signifie que les enfants dupliqués sont ajoutés. J'ai donc essayé de boucler tous les enfants et de les attacher au contexte, mais tous les enfants qui n'existaient pas auparavant ne sont pas ajoutés à la base de données et une exception DbUpdateException est levée.
Existe-t-il une manière générique de pouvoir attacher toutes les entités liées et d'avoir leurs états corrects? Toute aide que vous pouvez me donner serait appréciée. Merci!
Edit:
j'ai essayé de charger explicitement les enfants à l'aide Load()
, puis en ajoutant l'objet initial. Malheureusement, cela provoquait une exception car le commentaire parent avait l'enfant dans sa liste d'enfants mais le parentID de l'enfant existant n'avait pas encore été mis à jour.